Sam*_*Sam 2 ruby memory-management ruby-on-rails passenger ruby-on-rails-3
我是java背景的开发者,新手上的ruby on rails.我怀疑的是,由于JVM限制,我在我的服务器中因为Java原因而无法有效地使用它,因为在理解最大JVM堆大小 - 32位对64位时讨论了JVM限制 .Ruby On Rails有任何与物理内存(RAM)相关的限制,我给出了一个场景,可以用单个Phusion Passenger运行N no of Rails应用程序,直到我要破解至少20 GB的RAM.为什么我要问这个是我打算用一台服务器放50个学校管理应用程序,所以50个rails应用程序,是否可能或者我将失去内存错误,就像java中的东西一样.
在Rails中管理内存并不是一个特别科学的过程.应用程序之间的差异很大,没有简单的基准.但是,作为一般经验法则,每个活动Rails实例的预算为50-100MB.乘客有一些技巧在类似的实例之间共享大量内存,但它只是如此有效.
20GB的内存应该能够托管至少20个应用程序实例,至少从Rails的角度来看.但是,如果这些站点很忙,您可能希望从该池中为您的数据库预留至少4-8GB的内存.
Ruby中没有关于可以使用多少内存的内在限制,特别是如果它分布在许多不同的进程中.通常,如果它可供用户进程使用,则可以使用它.
如果站点不忙,它们根本不占用任何内存.乘客将自动降低闲置的进程以释放它们.在实践中,间歇性访问的站点几乎不会产生任何影响.
| 归档时间: |
|
| 查看次数: |
477 次 |
| 最近记录: |