为什么Ruby on Rails默认没有启用Rack::Deflater gzip压缩?

13

为什么Ruby on Rails没有默认启用Rack::Deflater gzip?如果有的话,gzip对Rails有哪些不利影响?

1个回答

8
我不知道官方背后的原因,但最明显的是,他们并不这样做,因为有更好的地方可以对响应进行gzip压缩,例如前端代理、负载均衡器或CDN。例如,我使用AWS Elastic Beanstalk部署Rails应用程序,并在Elastic Load Balancer(ELB)上配置gzip压缩,而不是在Rails应用程序内部。你想让你的应用程序免于进行压缩,让它专注于其核心业务逻辑。由于压缩HTML、CSS和JS是任何代理都能轻松完成的任务,所以你要将这个负担从应用程序卸下,交给负载均衡器处理。我认为没有人会让Rack中间件在生产环境中进行压缩,可能只有非常简单且小型的应用程序才会在单个实例上运行且没有负载均衡器。对于更大和复杂的应用程序,你希望你的代理来处理这项“工作”。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接