来自同事的建议解决方案为从未(几乎从未)更新过的文件设置缓存层。目前,Ruby应用程序必须从DB获取内容,呈现页面并为每个请求提供服务,但在Akamai CDN中缓存images / css / js除外。
当网站上有5K用户时,性能很糟糕。
建议的解决方案是一次生成1500万个静态页面(4T),存储在NFS服务器上的单个目录中,然后在9个Apache / Phusion-Passenger服务器之间共享,并将Apache设置为从挂载的NFS共享提供静态内容。
除了最初的1500万个文件外,每天还会生成8K静态文件并添加到NFS
中虽然,我不相信这是一个很好的解决方案,并且不愿意实现这一点并且考虑使用Varnish缓存大多数访问过的文章,我想知道其他人对提议的解决方案与清漆的看法。
问题:
我想提前感谢你的建议。
答案 0 :(得分:0)
您可以尝试使用GlusterFS。
首先按类别对文章进行分区。然后将它们存储到GlusterFS目录,如:
/mnt/articles/category1/201304/20130424/{a lot of files}
我有一个6节点的GlusteFS集群来存储日志文件。目前它有8T +文件,每天增加30G +没有任何问题。