我们希望在我们的网站上使用http缓存--特别是内容验证。
因为我们的内容管理系统从较小的内容片段构建页面,所以实际页面的最后修改日期并不总是准确地指示页面已经更改。因此,我们还希望使用etags。因为页面构造是基于许多其他页面片段的,所以我们认为提供准确etag的唯一真正方法是对内容流本身执行某种摘要。这似乎有点过头了,因为缓存应该减轻服务器的负载,但内容摘要显然是CPU密集型的。
我正在寻找最快的算法来创建一个与内容流相关的唯一的etag (inode等只是一个杂七杂八的东西,不会起作用)。MD5散列显然会得到最好的唯一结果,但是在类似的情况下,是否有人使用其他更快的算法呢?
很抱歉忘记了重要的细节...使用Java Servlets -在Windows2003上的websphere 6.1中运行。
我忘了提一下,还有一些实时数据库提要(我们是一家银行,需要确保利率是最新的),也可以更改内容。因此,找出内容何时发生变化可能很难确定。
发布于 2010-07-05 18:23:38
我会为每个片段生成一个校验和,但在片段发生更改时计算校验和,而不是在呈现页面时计算校验和。
通过这种方式,您只需支付相对较小的一次性成本,除非我们讨论的是每秒数百次的更改,而且每个请求都没有额外的成本。
https://stackoverflow.com/questions/3178688
复制相似问题