我正在与一个已经将Varnish部署为所有Web通信的caching逆向代理的组织一起工作。 他们的stream量构成了很多客户生成的dynamic网站,通常收集的静态资产悬而未决。
虽然我试图喜欢清漆(我认为它有一个相当不错的架构,原则上),我有一些麻烦pipe理和解决问题,因为他们出现,所以我想知道如果这是真的是正确的select。 我以前用过鱿鱼作为反向代理,但没有同样的作用,所以我没有明确的比较基础。
我的问题是针对那些在生产中使用过清漆的人,或者是针对替代品进行认真的评估:你是否坚持使用清漆,还是最终使用了另一种反向代理? 与此同时,切换的关键点是什么?如果你使用了别的东西,你最终会用到什么?
那么,我在我的networking服务器上运行Varnish,主要是出于性能方面的原因,尽pipe它的负载均衡特性也很方便。
我的用例caching在Django的网站之前,它确实为页面加载性能。 我能够直接从caching中提供大部分页面,并且处理大量的访问者,而且不费吹灰之力。
我selectVarnish的原因主要是性能/可扩展性。 要点:
根据我的经验,在大多数情况下,Varnish的性能比Squid要好一些,在stream量高峰上要好得多。 另一方面,正确地configurationVarnish将采取一些邮件列表拖网的方式,因为没有那么多准备去为你的具体使用情况的文件在网上stream动,因为有对鱿鱼来说 – 主要是因为清漆是一个比较年轻的项目。
我花了很长时间试图使varnish 1.x稳定在bog标准的linux / dell硬件上,它总是以一种奇怪的方式挂起来,它的看门狗会重启它。 除了没有被其他任何地方持久存储的硬盘caching之外,哪个还好。
话虽如此,你真的使用正确的工具来完成这项工作吗? 如果你想要一个反向代理caching请求的结果(假设你提供了高质量的caching头),那么清漆是一个不错的select。 希望2.0版本更稳定
但是,如果您正在运行* onRails站点,并且希望在多个后端服务器上进行负载均衡,那么HAProxy或Nginx可能就是要走的路。 如果你不需要任何复杂的url逻辑(redirect,regex匹配来重写更旧的url等),那么HAProxy将适合这个账单。 如果你确实需要更有能力的东西,那就给nginx一个去。