在尝试了更多之后,我对Radiant如何使用Rack Cache感到困惑。据我所知,Radiant只使用Rack::Cache到服务器作为客户端缓存的一种方式。因此Rack::Cache将检查客户端复制是否仍然新鲜,然后决定是否需要从Radiant项目重新生成内容。
除非Radiant缓存也用作客户端缓存。假设用户A已经提供了一个页面,然后用户B进来了,如果该页面仍然是“新的”,尽管他以前没有提供过该页面,但该页面将直接从缓存中提供(从实体文件夹)。
我尝试在生产模式下运行radiant项目,当我第一次提供页面时,生产日志将显示请求,但是当我刷新页面时,生产日志不显示任何请求。这应该是正确的,因为页面请求状态是304 Not Modified,所以它根本不会到达radiant项目。所以我可以说Radiant也是一个服务器缓存,这意味着内容被缓存在服务器端,只要缓存没有过期,不同的请求就可以从这个缓存中服务器?
我找到了关于http://groups.google.com/group/radiantcms/browse_thread/thread/d1e5f2836024d27f的讨论,但看起来其他人说Radiant也只是一个客户端缓存。看起来对我所发现的很困惑。
非常感谢。
发布于 2011-07-31 19:29:01
我最后回答了我自己的问题,我在上面写了一个详细的explanation。
https://stackoverflow.com/questions/5728006
复制相似问题