Mongodb web缓存策略

Mongodb web缓存策略,mongodb,caching,nginx,distributed-caching,database,Mongodb,Caching,Nginx,Distributed Caching,Database,所以我有一些页面需要缓存,大约500万页 页面很少更新 我想用nginx提供 由于服务器不同,无法使用文件系统进行缓存 我需要一些独立的数据库或NetFS或其他东西,它必须是可见的Nginx服务静态,后端可以控制它的缓存 目前我在看mongodb gridfs,但我不确定它是否是一个好的选择。它几乎没有令人不快的限制 静态文件的最佳可伸缩数据库是什么?如果问题是您所描述的,那么我认为您使问题变得比实际更复杂。静态页面就是这样:静态的。Nginx在提供静态文件方面做得非常好。如果您需要在上面设置一

所以我有一些页面需要缓存,大约500万页

  • 页面很少更新
  • 我想用nginx提供
  • 由于服务器不同,无法使用文件系统进行缓存 我需要一些独立的数据库或NetFS或其他东西,它必须是可见的Nginx服务静态,后端可以控制它的缓存

    目前我在看mongodb gridfs,但我不确定它是否是一个好的选择。它几乎没有令人不快的限制


    静态文件的最佳可伸缩数据库是什么?

    如果问题是您所描述的,那么我认为您使问题变得比实际更复杂。静态页面就是这样:静态的。Nginx在提供静态文件方面做得非常好。如果您需要在上面设置一个缓存层,请查看。我建议只使用常规文件系统重新访问,并在测试之后,考虑调整和优化文件系统和存储以提高性能。

    ngnx是Servy1后端生成Server 2上的静态文件,我如何传输它或使其能够对ServLy1可见?您可以有一个实时镜像/部署服务,在所有后台服务器之间同步文件,网络在每个服务器上安装一个共享,甚至可以使用为该任务制作的分布式文件系统。最重要的是,从简单的事情开始,然后使用真实(或模拟)流量测试设置的性能,以准确估计您的需求和部署的效果。好的,如果有人更新了他的页面,我需要更改缓存文件。看起来我必须检查所有500万个缓存文件,如果其中一个文件发生了更改,则将其移动到前端服务器缓存。如果我用rdiff之类的东西。我肯定不会这么快,如果服务器1仍然有旧缓存,我怎么能将updatet页面返回给用户呢?我想你误解了这个问题。缓存和服务文件是两个独立的问题。Nginx最擅长的就是提供静态文件。Varnish最擅长的是缓存和分发整个页面。测试和基准你的流量,然后相应地计划。如果你真的需要多个Nginx+Varnish服务器来提供静态文件,那么你可能做了一些非常非常错误的事情。大多数由后端生成的页面,在3-7个月的时间内都没有更改。这就是为什么我要创建它的静态版本,以消除服务器的负载,页面生成量非常大。另一方面,我使用memcached。听起来更像是一个管理员/网站管理员类的问题(与编程不太相关?),此时我测试了MongoDb Gridfs+nginx Gridfs(用于从MongoDb的Gridfs提供文件的nginx模块)