Sailsjs - 挂钩 orm 加载时间过长 - 模数

Sailsjs - Hook orm taking too long to load - Modulus

我使用 sails.js 制作了一个 nodejs 应用程序。它在我的本地主机上运行良好。当我尝试在服务器(模数)中发布它时,问题出现在生产中。你可以看看下面的错误。

Error: The hook `pubsub` is taking too long to load.
Make sure it is triggering its `initialize()` callback, or else set `sails.config.pubsub._hookTimeout to a higher value (currently 20000)
    at tooLong [as _onTimeout] (/mnt/data/1/ApiDevConf-master/node_modules/sails/lib/app/private/loadHooks.js:92:21)
    at Timer.listOnTimeout (timers.js:110:15) { [Error: The hook `pubsub` is taking too long to load.
Make sure it is triggering its `initialize()` callback, or else set `sails.config.pubsub._hookTimeout to a higher value (currently 20000)] code: 'E_HOOK_TIMEOUT' }

我试图找出解决问题的方法,但没有任何效果。我正在尝试这样的想法 here

另外我已经正确设置了 NODE_ENV = production

感谢您的宝贵时间。

听起来这可能是两个问题之一。

1.) 您需要将 config/model.js 中的迁移设置设置为 alter 以外的设置。您应该在生产模式下打开 migrate: 'safe'。如果 NODE_ENV 变量设置为 production.

,这应该会自动发生

超时的原因是每次启动服务器时,Sails 都会尝试将现有数据迁移到当前模式。显然不希望在生产中使用它。

2.) 你有很多文件要加载,而 Modulus 从它的虚拟磁盘读取它们的速度很慢。这是一个更大的问题,因为每次需要重新启动服务器时都需要很长时间才能启动。您可以突破全局超时限制,这应该会给您更多时间。为此,请将以下内容添加到您的 config/env/production.js 文件中:

module.exports = {
  hookTimeout: 40000
}