首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >nginx比Apache2减少了多少内存占用?

nginx比Apache2减少了多少内存占用?
EN

Stack Overflow用户
提问于 2011-04-09 01:11:33
回答 1查看 2.2K关注 0票数 2

我想知道将Rails应用程序从Apache2 + Passenger移植到Nginx + Passenger是否值得。我们这样做的主要原因是为了释放RAM,或者在给定的RAM数量上处理更多的请求。

有没有人知道Nginx + Passenger在使用RAM方面的效率有多高?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-04-09 01:43:45

答案高度依赖于:

  • 您已启用的web服务器模块
  • 您使用的Ruby实现(例如Ruby企业版与MRI)
  • 您的应用程序的流量模式。

设置nginx + Passenger非常简单。只需在云服务器或虚拟机上快速安装每个环境,并针对它们运行一些基准测试工具。

不过,一般来说,最大的RAM消耗是您的Rails应用程序,而不是web服务器。如果你关心RAM的使用,你最好把时间花在比较Ruby实现上,或者减少你的代码使用的gem/plugin/libraries的数量,或者减少你使用的web服务器模块的数量。

Nginx的某个did a benchmark与每个并发连接的Apache内存利用率。Nginx显然是赢家。但应该注意的是,在大约4000个并发连接时,该图上的最高内存利用率仅为~40MB。在大多数情况下,40MB的内存占用甚至比单个Rails实例都要小,而且您不太可能在一台服务器上实现4000个并发rails请求。因此,切换到Nginx是值得的,但首先,如果您还没有切换到Ruby Enterprise Edition,那么请尝试减少应用程序的内存占用,因为您的Rails应用程序将比这两个web服务器使用更多的内存。

例如,我在生产环境中运行Apache/Passenger/REE,根据passenger-memory-stats的报告,即使使用REE改进的内存占用,我的Rails应用程序使用的内存也是Apache的13倍。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5598495

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档