39得票1回答
如何在Linux上使用Ruby 2.0改善独角兽进程之间的内存共享

Ruby 2.0引入了一种友好的写时复制垃圾收集器。我的进程似乎无法将内存保留共享超过几分钟 - 它似乎很快从shared_dirty转移到private_dirty。 其他一些人已经成功地使其工作: https://gist.github.com/kenn/5105175 http:/...

34得票3回答
Heroku上的Thin和Unicorn有何区别?

想了解人们对于在Rails服务器上使用Unicorn和Thin的看法。大部分在线文章或基准测试结果都显得非常不完整,因此建立一个集中讨论的地方会很不错。 Unicorn是一个多进程服务器,而Thin是一个事件驱动/非阻塞服务器。如果您的代码是异步或非阻塞的,那么事件驱动服务器是很好的选择 -...

31得票3回答
Heroku的Rails、Mongoid和Unicorn配置

我正在使用Mongoid 3,与Rails 3.2.9和Unicorn用于生产。想要设置before_fork和after_fork来连接mongodb,找到了以下活动记录的代码: before_fork do |server, worker| # Replace with MongoD...

29得票1回答
独角兽:应该使用多少个工作进程?

我在一台只能使用1GB内存的虚拟Linux服务器上运行Ruby on Rails应用程序。目前,我不断地达到了内存极限,希望优化内存利用率。我正在考虑的一个选项是减少unicorn worker的数量。 那么确定使用unicorn worker的最佳数量的方法是什么? 当前设置为10个wo...

28得票3回答
Bundler在生产环境下错误地尝试安装“开发”和“测试”组的gem。

我有一个小型Web应用程序,使用了许多gem。其中一些仅在测试和开发环境中使用。现在,当我尝试使用以下命令在生产服务器上启动独角兽时,它会失败。unicorn_rails -E production -D -c config/unicorn.rb 我在日志文件中看到的错误是:Refreshin...

28得票2回答
多进程与多线程服务器最受益于哪些方面?

有人能解释一下每种并发方法的瓶颈在哪里吗? 像Unicorn(基于进程)和Puma(基于线程)这样的服务器。 每种方法喜欢CPU核心吗?线程?还是仅仅是时钟速度?或者是特定的组合? 如何确定在使用专用服务器的情况下需要的最佳CPU特性? 而在使用Unicorn的情况下,如何确定最佳的w...

24得票2回答
使用USR2重启Unicorn似乎无法重新加载production.rb的设置。

我正在运行独角兽(unicorn)并尝试实现零停机重启。 到目前为止,一切都很顺利,主进程分叉并启动了4个新的工作进程,然后杀死旧的进程,所有人都很开心。 我们的脚本发送以下命令来重启独角兽:kill -s USR2 `cat /www/app/shared/pids/unicorn.pi...

24得票3回答
独角兽请求排队

我们刚从Passenger迁移到Unicorn来托管一些Rails应用程序。一切正常,但我们注意到通过New Relic发现请求排队时间在100到300毫秒之间。 这是图表: 我不知道这是从哪里来的,以下是我们的独角兽配置文件: current_path = '/data/actor...

23得票2回答
使用Heroku推荐的Unicorn配置时出现错误R12(退出超时)

我的独角兽配置(从Heroku文档复制):# config/unicorn.rb worker_processes Integer(ENV["WEB_CONCURRENCY"] || 3) timeout 30 preload_app true before_fork do |server,...

23得票1回答
什么是unicorn和unicorn_rails的区别?

那么...unicorn 和 unicorn_rails 有什么区别呢? 在什么情况下应该使用其中之一?