缩放Node.js应用程序 – 哪个提供程序?

我一直在使用一些Node.js框架来创build我通常使用Heroku进行部署的应用程序。 最近我在Derby的文档页面上看到了这个免责声明:

请注意,虽然Derby支持多个服务器,但它当前要求客户端重复连接到同一台服务器。 Heroku不支持粘滞会话或WebSocket,所以不可能使用多个dyno。 您将不得不使用不同的托pipe选项来扩展您的应用程序。

这显然与可扩展性有关。 由于上面的陈述,我明白这不是一个节点的限制,而是一个Heroku的限制。

首先,这是准确的吗? 那就是 – 我无法在Heroku上扩展Node应用程序?

如果这是事实,我应该在哪里转身? AWS?

谢谢。

德比不是一个典型的Node.js应用程序。 Derby(和Meteor)基本上是在Node之上构build的完整框架。 Heroku还不支持Websockets: https : //devcenter.heroku.com/articles/using-socket-io-with-node-js-on-heroku

但是,常规Node应用程序的粘性会话的典型替代方法是使用Redis(或Postgres或Mongo)等数据存储来存储会话数据。 这是一个比粘性会话更强大的方法,因为它对任何特定设备的故障都具有适应性。

看看http://12factor.net/更多关于水平缩放的信息。