2010-07-05 7 views
2

웹 사이트에서 http 캐싱, 특히 콘텐츠 유효성 검사를 사용하고자합니다.가장 빠른 etag 알고리즘

CMS가 콘텐츠의 더 작은 조각으로 페이지를 구성하기 때문에 실제 페이지의 마지막 수정 날짜가 항상 페이지가 변경된 정확한 표시가되는 것은 아닙니다. 따라서 우리는 또한 etags를 사용하고자합니다. 페이지 구성은 다른 많은 페이지 조각을 기반으로하기 때문에 정확한 etag을 제공하는 유일한 방법은 컨텐츠 스트림 자체에 일종의 다이제스트를 수행하는 것입니다. 이것은 캐싱이 서버로부터의 부하를 덜어주기위한 것이지만 콘텐츠 다이제스트는 분명히 CPU를 많이 사용하기 때문에 조금 익혔습니다.

콘텐츠 스트림과 관련있는 고유 한 etag를 만드는 가장 빠른 알고리즘을 찾고 있습니다. (inode 등은 단지 kludge이며 작동하지 않습니다.) MD5 해시는 분명히 최고의 고유 결과를 얻으려고하지만 비슷한 상황에서 더 빠른 다른 알고리즘을 사용하는 다른 사람입니까? 창에 웹 스피어 6.1에서 실행 나는 우리가 은행을이고 있는지 확인해야합니다 (라이브 데이터베이스 피드가 있음을 언급하는 것을 잊었다 2003

-

죄송합니다 자바 서블릿을 사용하여 ... 중요한 세부 사항을 잊어 버렸습니다 이자율이 최신이 됨) 또한 내용을 변경할 수 있습니다. 따라서 콘텐츠가 변경된시기를 파악하는 것은 까다로울 수 있습니다.

+0

어떤 플랫폼입니까? 어떤 웹 서버입니까? 어떤 언어? – Oded

+0

이것은 시작점 일 수 있습니다 : http://stackoverflow.com/questions/384811/fastest-hash-algorithm-for-text-data –

+0

죄송합니다 중요한 세부 정보를 잊어 버렸습니다 ... Java Servlets 사용 - Windows에서 websphere 6.1에서 실행 중 2003. – subcontact

답변

0

각 조각마다 체크섬을 생성하지만 페이지를 렌더링 할 때가 아니라 조각이 변경된 경우 계산합니다.

이렇게하면 초당 수백 번의 변경 사항을 언급하지 않는 한 일회성 비용을 지불해야합니다. 요청 당 추가 비용은 없습니다.