ruby的几个web server,按照开发活跃度、并发方案及要点、适用场景等分析puma vs passenger vs rainbows! vs unicorn vs thin。

1. thin: 长久未更新,

2. unicorn: 未测试。

3. opensource passenger or enterprise passenger:  open source版只支持多进程*1线程,enterprise版收费,但支持多进程*多线程。性能不如其宣传的好,甚至比unicorn 和 puma差很多。

4. rainbows!: 支持cluster模式,比puma的mem使用率稍高,

5. puma: 支持cluster模式,支持多进程*多线程,但是我测试后发现,其多线程模型在原生ruby上对性能提升微乎其微。在jruby上内存消耗非常大,在robinus上则不稳定,折腾了很长时间。

注意rails引用在采用多线程的web server方案时,需要注意其本身的thread.safe问题,请阅读:参考链接5.

测试环境是:bitnami_redmine 2.3.1版  ubuntu 12.04 64bit

---待完善。

1. robin的puma vs rainbows介绍: https://ruby-china.org/topics/10832

2. rainbows官网:http://rainbows.bogomips.org/

3. puma : https://github.com/puma/puma/

4. thin : https://github.com/macournoyer/thin

5. rails 4 以下的 thread.safe 问题:https://bibwild.wordpress.com/2013/02/18/rails-and-concurrent-request-handling/

6. unicorn官网:  http://unicorn.bogomips.org/

最新文章

  1. Intellij Idea/Webstorm/Phpstorm 版本控制忽略文件
  2. ASP.NET 5系列教程 (二):Hello World
  3. linux 下安装gsl
  4. 实例详细说明linux下去除重复行命令uniq
  5. 怎样下载完整的Spring包
  6. bzoj 1053: [HAOI2007]反素数ant 搜索
  7. linux ar 命令的使用说明那个和例子[转]
  8. Unity5权威讲解
  9. phpcms页面替换
  10. 【Oracle】环境变量与监听文件
  11. poj 2723 二分+2-sat判定
  12. c#中常用集合类和集合接口之集合类系列【转】
  13. 利用Navicat高效率postgresql转mysql数据库
  14. Verilog语言实现并行(循环冗余码)CRC校验
  15. Loadrunner测试数据库性能,测试SQL语句的脚本例子
  16. React 中的key值
  17. qtp type和set方法的区别
  18. JAVA核心技术I---JAVA基础知识(映射Map)
  19. 转载:Practical UML™: A Hands-On Introduction for Developers
  20. CURLE_OPERATION_TIMEDOUT libcurl 错误码28– 操作超时

热门文章

  1. Collections类常用方法总结
  2. 不可变String
  3. Win7启动修复(Ubuntu删除后进入grub rescue的情况)
  4. MySQL Connector/J 6.x jdbc.properties 配置, mysql-connector-java-6.0.4.jar 异常
  5. Android 5.x特性概览一
  6. 面向对象开发方式的开源硬件--.NET Gadgeteer
  7. ASP.NET MVC学习之视图篇(2)
  8. 你在用什么思想编码:事务脚本 OR 面向对象?
  9. APP API如何维护多个版本的一些想法?
  10. 趋势型指标——MACD