Dog*_*her 4 memory ruby-on-rails sinatra
有人可以评论转移到Sinatra的每个过程的改进吗?
我发现我的Web API每个Passenger Rails 3进程使用大约100MB.我想知道如果我换到Sinatra会有什么改进.
这是一个随机的非真实世界的基准,给你一个小小的想法:
| Real | Private | Vir. Priv. |
---------------+---------+---------+------------|
[1] Rails | 38.6MB | 35.9MB | 76.3MB |
---------------+---------+---------+------------|
[2] Sinatra | 18.7MB | 16.2MB | 51.7MB |
---------------+---------+---------+------------|
[3] + Haml | 19.6MB | 17.0MB | 53.7MB |
---------------+---------+---------+------------|
[4] + Sequel | 24.4MB | 21.7MB | 54.8MB |
---------------+---------+---------+------------|
Run Code Online (Sandbox Code Playgroud)
require 'sinatra'; get('/'){ "Hello" },提出1请求.get ('/'){ haml "%p Hello" },发出1请求.DB = Sequel.sqlite,,发出1请求.所有在OS X上测试过.这个测试表明a)Sinatra比Rails更加简单,b)如果你想要任何有意义的数字,你需要比较苹果和苹果(在你选择的操作系统上).具有相同功能的相同应用程序.
我使用Thin + Sequel + Haml + pg在Windows上运行的真实应用程序往往每个实例运行大约50-90MB(取决于我在反向代理后运行2-4个实例的应用程序).因人而异.