【发布时间】:2015-11-25 14:38:55
【问题描述】:
我创建了我的第一个 Node.js 应用程序,该应用程序由两个 Express 服务器组成,每个服务器侦听不同的端口。两个服务器实例具有不同端口的原因是因为一个服务器用于一般浏览器访问,另一个是嵌入式设备连接的“机器接口”服务器。
在Openshift上部署时,我了解到监听端口必须是process.env.OPENSHIFT_NODEJS_PORT。这没问题:我可以重新设计我的应用程序来解决这个问题,只需使用一个服务器实例并利用路由,因为在这两种情况下都使用 HTTP。
但是我对以下几点感到好奇:如果我选择创建一个需要侦听非 HTTP 端口的 Node.js 应用程序,特别是如果它使用我自己的一些专有 TCP 协议,那么我的选择是什么?大多数公共托管平台是否专门针对 Web 应用程序,我必须寻求专家/专用机器托管来支持任意端口?或者,我是否做错了?换句话说,部署一个侦听任意/非 HTTP(S) 端口的 Node.js 应用程序是否非常规?
here 提出了一个非常相似的问题,尽管答案只关注 Websockets 的主题。
【问题讨论】:
标签: node.js