Ruby on rails RubyonRails应用程序可以运行多核吗?
在RubyonRails应用程序中,与单核相比,它在性能方面会有所不同吗Ruby on rails RubyonRails应用程序可以运行多核吗?,ruby-on-rails,multiprocessing,Ruby On Rails,Multiprocessing,在RubyonRails应用程序中,与单核相比,它在性能方面会有所不同吗 如果我有多核,我如何通过多核管理rails 如果使用多核处理器,则只有在rails应用程序以多线程模式或多进程模式运行时,多核服务器才能提高性能。Ruby目前支持“绿色”线程,这些线程是轻量级的,不是真正的处理器线程。Rails支持多线程,但可能缺少对gem的支持,并且可能对生产不稳定。为了充分利用多核服务器,运行unicorn或passenger这样的web服务器,可以为每个核心生成rails进程,这将为您提供最佳性能提
如果我有多核,我如何通过多核管理rails
如果使用多核处理器,则只有在rails应用程序以多线程模式或多进程模式运行时,多核服务器才能提高性能。Ruby目前支持“绿色”线程,这些线程是轻量级的,不是真正的处理器线程。Rails支持多线程,但可能缺少对gem的支持,并且可能对生产不稳定。为了充分利用多核服务器,运行unicorn或passenger这样的web服务器,可以为每个核心生成rails进程,这将为您提供最佳性能提升。基本上,您可以指定rails应用程序同时运行“8个进程”,每个进程将使用一个核心。我这样做的方式是使用phusion passenger[在我的例子中,使用nginx],您可以让它像 乘客\最大\游泳池\大小8 根据应用程序8,乘客数量最多
如果您想确保您的内核都很忙[并且有足够的RAM],那么可能会将它们设置为16英寸大小我不确定,如果我没有弄错您的问题的话。也许这有帮助?很简单:更多的内核/处理器-更多的并行工作者。如果只有一个辅助进程,则不需要多个核心。这还取决于ror应用程序是否为多进程/线程构建。Ruby实现可以在其体系结构中具有这种功能,但应用程序可能仍然缺少itRuby,因为它从1.9开始就有真正的线程。现在已经4岁了(1.9.3)。1.9.0是8岁。绿色线程是一个只有1.8版本的东西。