마이너스 캐시

Negative cache

컴퓨터 프로그래밍에서 네거티브 캐시는 "네거티브" 응답, 즉 실패도 저장하는 캐시입니다.즉, 원인을 수정한 후에도 프로그램에서 오류를 나타내는 결과를 기억합니다.통상 마이너스 캐시는 설계상의 선택이지만 소프트웨어 버그일 수도 있습니다.

네트워크를 사용할 수 없는 동안 페이지 로드를 시도하는 웹 브라우저를 생각해 보십시오.브라우저에는 문제를 나타내는 오류 코드가 표시되며 요청된 페이지 대신 사용자에게 이 오류 메시지가 표시될 수 있습니다.단, 브라우저가 페이지캐시에 오류 메시지를 넣는 것은 올바르지 않습니다.이는 사용자가 같은 페이지를 로드하려고 할 때 오류가 다시 표시되기 때문입니다.네트워크가 백업된 후에도 마찬가지입니다.오류 메시지는 페이지의 URL 아래에 캐시해서는 안 됩니다.브라우저가 페이지를 정상적으로 로드할 수 있을 때까지 사용자가 페이지를 로드하려고 할 때마다 브라우저는 새로운 시도를 해야 합니다.

네거티브 캐시의 불만스러운 점은 사용자가 문제의 트러블 슈팅에 많은 노력을 기울인 후 근본 원인을 파악하여 제거해도 오류가 사라지지 않는다는 것입니다.

장애와 같은 상태를 캐시해야 하는 경우가 있습니다.예를 들어 DNS에서는 캐싱 네임서버가 긍정적인 응답뿐만 아니라 부정적인[1] 응답도 기억해야 합니다.권한이 있는 네임 서버가 이름이 존재하지 않음을 나타내는 부정적인 응답을 반환하는 경우, 이 응답은 캐시됩니다.부정적인 응답은 응용 프로그램레벨에서의 장애로 인식될 수 있지만, 네임 서버 캐시에서는 장애가 아닙니다.네거티브 및 포지티브 캐시에 대한 캐시 시간은 독립적으로 조정할 수 있습니다.

묘사

일반적으로 네거티브 캐시는 장애가 매우 비싸고 오류 조건이 사용자의 작업 없이 자동으로 증가하는 경우에만 필요합니다.사용자가 생각할 수 있는 모든 문제를 해결했음에도 불구하고 프로그램이 작동을 거부하는 등 사용자가 장애의 원인을 특정할 수 없는 상황이 발생합니다.에러가 캐시되면, 에러의 원인에 대한 설명과 함께, 캐시를 클리어 하기 위해서 무엇을 할 필요가 있는지를 명확하게 나타낼 필요가 있습니다.이러한 상황에서는 네거티브캐시가 설계 안티패턴의 예입니다.

캐시된 레코드가 만료되면 마이너스 캐시가 복구될 수 있습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ RFC 2308