ruby-on-rails - 用于 Rails 的 Phusion Passenger 应用程序预加载器

标签 ruby-on-rails postgresql redis memcached passenger

我最近转而使用 Phusion Passenger 4.0.50 来替代 Unicorn。 原因是因为 Passenger 与 Nginx 集成得很好,也可以为 Node.js 应用程序提供动力。但是,我想知道我是否应该像处理 Unicorn 那样处理外部连接(使用 Postgresql、Redis、Memcached)。

我在 Passenger git 上找到了一些代码,例如 this one .但是这段代码似乎属于 Passenger 而不是 Rails 应用程序。

截至目前,我使用的是 Ruby 2.1.2 和 Rails 4.1.6。这样处理外部连接的工作还需要吗?如果是,我应该怎么做?

谢谢。

更新:

根据这个thread ,似乎正常的 ActiveRecord 由 Passenger 自动处理。

最佳答案

Phusion Passenger 作者在这里。是的,您必须对外部连接做些什么。 Phusion Passenger 中的“智能生成”概念与 Unicorn 中的“preload_app on”概念完全相同。我们在文档中有一整节解释它是如何工作的以及注意事项是什么(特别是关于外部连接):https://www.phusionpassenger.com/documentation/Users%20guide%20Nginx.html#spawning_methods_explained

唯一的异常(exception)是 Rails 默认的 ActiveRecord 连接。我们会自动重新建立它,因为它占超过 90% 的用例。

关于ruby-on-rails - 用于 Rails 的 Phusion Passenger 应用程序预加载器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25862355/

相关文章:

postgresql - 在 Postgres 中使用限制选择更新

python - 如何避免使用 "SELECT * FROM {table_name}"进行 SQL 注入(inject)?

redis - 是否必须同时满足条件 'seconds' 和 'key modification' 才能使快照工作 - Redis

如果内容为零,CSS 不会显示在 Rails 应用程序 View 中

ruby-on-rails - 由于 DOTENV 未初始化常量错误,无法推送到 Heroku

ruby-on-rails - Rails 的 to_query 方法的对立面是什么?

sql - PostgreSQL:在大型数据库上定义主键

mysql - 将持久对象委托(delegate)给 Redis,使用 MySQL 回退

node.js - 在 Node.js/Express 中的路由中传递 Redis 键值对

ruby-on-rails - 如何在 factory_girl 工厂中使用设计 current_user