加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 为什么我们在部署rails应用程序时需要一个apac

发布时间:2020-12-16 19:21:17 所属栏目:百科 来源:网络整理
导读:我虽然可以用webrick或mongrel部署它 解决方法 大多数 Ruby应用程序服务器只运行一个 Ruby进程(并且Ruby有一个全局解释器锁,使多线程毫无意义),这意味着它一次只能处理一个请求.至少可以说,这不会给你很好的表现. 有两种解决方法:要么运行多个Ruby应用程序
我虽然可以用webrick或mongrel部署它

解决方法

大多数 Ruby应用程序服务器只运行一个 Ruby进程(并且Ruby有一个全局解释器锁,使多线程毫无意义),这意味着它一次只能处理一个请求.至少可以说,这不会给你很好的表现.

有两种解决方法:要么运行多个Ruby应用程序服务器,要么在它们前面放置负载均衡器或反向代理,例如:在一组Mongrels或Thin服务器前面的Nginx或Apache(您运行的进程数反映了您将能够并行处理的请求数).或者运行Passenger,它是一个Apache或Nginx模块,用于管理可随负载变化而动态增长和缩小的应用程序池.第一个选项为您提供了更多配置选项,但第二个选项更易于管理.你想要哪一个取决于你的用例.

当然还有其他解决方案,但它们适用于更具体的用例.例如,您可以编写一个性能非常高的应用程序并使用Thin部署它 – 但它要求您编写一个事件驱动的应用程序.您无法部署Rails应用程序并期望获得相同的性能.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读