是否可以在Heroku上托管NodeJS应用程序并接受TCP套接字和WebSocket连接?
我需要它将普通的TCP套接字客户端用于Web前端应用程序吗?
谢谢你, IDO。
答案 0 :(得分:1)
Heroku应用程序绑定到$ PORT env var中运行时提供给它们的端口。这是Heroku路由器所知道的端口,目前每个dyno只支持一个端口。
Heroku路由器支持任意协议升级:https://devcenter.heroku.com/articles/http-routing#protocol-upgrades
您可以使用它根据请求标头或路径升级到WebSocket或TCP连接。
答案 1 :(得分:0)
我使用Ruppell's Sockets我能够在Heroku的同一个应用程序中托管HTTP,WebSocket和TCP端点。
我同意,从长远来看,将单片应用程序分离到两个或更多应用程序可能是正确的方法,但我很确定它不是开始的方式,只会使事情过于复杂。
P.S。 Ruppell's Sockets适用于任何带有套接字的语言(关于任何语言),而不仅仅是NodeJS。