对于Node.js应用程序,何时使用端口3000 vs 8080?

我一直在阅读一些教程,尽pipe其中大部分使用端口3000作为节点应用程序…其中一些使用端口8080来代替。 我想知道什么是推荐的做法,在什么情况下我们应该使用另一种。 任何指导?

没有任何官方的说法来自node.js,因为在这方面没有任何官方言论。

你会发现许多人会混淆,使用端口80和443分别为http和https是标准。 那么这是标准PC的标准,这些细节在1994年发布的文件中得到TB Lee的支持。

对于一般的networking使用,尽量不要使用1024以下的端口,否则你将不得不在networking服务器上拥有root权限才能运行该进程。 就像其他人说的,只要使用任何未使用的端口,你就会好,但超过1024,否则你需要root权限。

我build议你使用任何反向代理引擎,使事情更容易和适合。 最好nginx,他们甚至会帮助你有多个你的服务器的实例,这将帮助你正确地使用服务器。 虽然没有必要使用反向代理,因为无论如何事情都可以运行。

我build议使用反向代理,因为通常我们没有充分利用可用的服务器的容量,因此使用集群将帮助我们获得更多的性能。

注意:如果您不打算在实际域中使用该应用程序,而您只是在尝试,则请忽略反向代理部分,只有在您想扩展应用程序时才是重要的。

参考

点击这里

当您的服务器上的另一个程序(可能是另一个节点服务器,它通常由http代理使用)使用端口8080时,您使用端口3000。 那么,如果端口3000和8080已经被使用,你可以使用3001或3002或30000或10000.任何未使用的端口都可以。

我认为端口“3000”和端口“8080”在您阅读的教程中用于开发目的,在这种情况下,任何一个工作正常,两者都不会比另一个更好。 所以你可以select一个使用。 但是,在完成开发并想要将项目投入生产后,请根据需要select适当的端口,例如“http”或“https”的“443”。