我有以下设置:
- Nginx(1.1.19)在前端作为反向代理/负载均衡器
- IIS7 作为 Web 服务器
- MySQL 作为数据库
我想知道是否要使用负载均衡器或 Web 服务器来压缩静态资源(如 JS、CSS 等)和生成的 HTML?Nginx 能否正常将从 IIS 收到的已压缩响应传递到客户端,还是最好在 Nginx 上进行压缩?如果使用 IIS 进行压缩,它与 Nginx 之间的流量会更小。
我当然应该衡量哪种选择更好,但在此之前,有人有类似的设置经验吗?什么对你有用,为什么你最终选择了那个解决方案?
谢谢!
答案1
您应该将其保留在网络服务器上,因为负载均衡器通常(应该)针对此目的进行优化,而不是针对修改内容。
当然你能在 LB 上执行此操作,但您很可能需要对其进行大量增强 - 这些资源在 Web 服务器上更有用。在我看来。
答案2
由于延迟增加且带宽裕度足够,在 LAN 内部使用压缩通常没有好处,但当它将流量转发到 Internet 时,这样做是有意义的。此外,后端通常可以免于额外的工作,这是使用 nginx 而不是 IIS 进行压缩的第二个原因。