我已經將我們的堆棧轉換爲Rails 4(yea!)是彪馬唯一的多線程導軌4 HTTP服務器?
我期待利用線程安全代碼。
彪馬工程起牀,停止它似乎是一個不同的問題:(
彪馬是唯一的多線程軌
Thin -> EventMachine
Unicorn -> Forking
Puma -> multi-threaded
Mongrel -> don't care
Webbrick -> don't care
我已經將我們的堆棧轉換爲Rails 4(yea!)是彪馬唯一的多線程導軌4 HTTP服務器?
我期待利用線程安全代碼。
彪馬工程起牀,停止它似乎是一個不同的問題:(
彪馬是唯一的多線程軌
Thin -> EventMachine
Unicorn -> Forking
Puma -> multi-threaded
Mongrel -> don't care
Webbrick -> don't care
號按字母順序排列:
Iodine
HTTP/Websocket服務器& EventMachine替代方案(基於kqueue/epoll)Net::HTTP::Server
,儘管缺乏廣告,支持多線程--threaded
或通過適當的配置文件中設置threaded: true
(被使能例如bundle exec thin start --threaded
)Rails::Server
to enable multi-threading注意在時間運行,由於其global interpreter lock (GIL)。只有通過使用不同的Ruby運行時(例如JRuby或Rubinius)才能真正能夠利用多線程,這些運行時提供對本地線程的訪問。如果您決定使用JRuby,有幾個JVM-dependent servers worth exploring。
特立尼達不錯。對JRuby的發展的一個非常強大的服務器:
http://blog.jruby.org/2012/04/two-apps-one-trinidad/
http://railscasts.com/episodes/377-trinidad?view=comments
這裏有一些很好的基準(在特里尼服務器擊敗彪馬):
http://carlhoerberg.github.io/blog/2012/03/31/jruby-application-server-benchmarks/
一個不錯的特立尼達服務器安裝教程:
這不屬於「程序員通常使用的軟件工具」的標題,因此不屬於「脫離主題」? –
我在灰色區域查了一下關於頁面 - http://stackoverflow.com/about possilby,但我認爲它有資格。 – Daniel