Performance 我应该用清漆而不是nginx吗?

Performance 我应该用清漆而不是nginx吗?,performance,caching,nginx,reverse-proxy,varnish,Performance,Caching,Nginx,Reverse Proxy,Varnish,我真的很喜欢nginx 但最近我发现varnish为您提供了一个实现智能缓存反向代理层(带有URL清除)的机会。我有一个非常资源密集的混血儿集群,所以如果这个缓存层可以从混血儿中移除一些负载,这将是一件很棒的事情 我没有找到一种方法来实现与nginx相同的缓存层(对于应用程序页面;静态内容当然是可缓存的) 我应该改用清漆吗?您有什么建议?我不知道您在“智能”下的意思,但无论如何,Nginx从0.7分支开始有缓存。有许多参数需要调整,例如: 对于不同的返回码,您可以有不同的TTL 能够在应用程序

我真的很喜欢nginx

但最近我发现varnish为您提供了一个实现智能缓存反向代理层(带有URL清除)的机会。我有一个非常资源密集的混血儿集群,所以如果这个缓存层可以从混血儿中移除一些负载,这将是一件很棒的事情

我没有找到一种方法来实现与nginx相同的缓存层(对于应用程序页面;静态内容当然是可缓存的)


我应该改用清漆吗?您有什么建议?

我不知道您在“智能”下的意思,但无论如何,Nginx从0.7分支开始有缓存。有许多参数需要调整,例如:

  • 对于不同的返回码,您可以有不同的TTL
  • 能够在应用程序不响应时返回过时内容
  • 可以限制磁盘上缓存的总大小
  • 您可以定义将使用哪些信息来生成缓存密钥

如果您只需要非常基本的缓存,Nginx有一些很好的功能,但是Varnish允许您通过URL或标题匹配进行主动清除,edge side包括这样的功能,页面的不同部分可以有不同的TTL,还有许多其他的技巧,因为它有一个非常灵活的配置语言


如果您真的想认真缓存并减少后端的负载,我会选择varnish,但要设置它,需要做的工作远不止是在nginx.conf中添加几个指令。

此外,varnish还允许使用nginx无法实现的边缘包含