“;正确的方式”;在单个服务器上托管多个NodeJS域
The "right way" to host multiple NodeJS domains on a single server?
我有一个VPS,它运行Apache并为许多WordPress网站提供服务。我还设法使用MEAN堆栈在同一个VPS帐户上运行了一个NodeJS服务器。这种设置运行良好。
我决定在同一台服务器上添加第二个NodeJS/MMEAN应用程序,在一个单独的端口上运行,一切都很好——只是我注意到,一旦我运行了第三台服务器,所有网站的页面加载性能都会受到重大影响。
我在SO上发现了这个问题和这个问题,但这两个问题都没有解决性能问题。所以我的问题是:
在同一个NodeJS服务器应用程序上运行两个独立/唯一的域是否可行还是这会造成比解决更多的问题?(注意:我指的不是同一台机器,我指的是同一个NodeJS实例)
如果没有,如何提高性能升级我的VPS是唯一的选择吗?
因此,您确实可以在同一端口/进程上运行多个应用程序。如果需要按域进行分离,可以使用express-vhost
模块来完成此操作。您还可以使用cluster
模块来运行共享资源的进程池(尽管它们最终是同一个"应用程序",但您可以将其与vhost方法相结合,使进程池为多个域提供服务。
也就是说,我不认为你真的会得到你想要的结果。与大多数进程(例如JVM)相比,nodejs进程的开销是微不足道的;成本主要来自于您的自定义代码所做的任何事情。我认为更可能发生的情况是,无论你为VPS选择了什么大小的服务器,都不足以运行你扔给它的所有东西,或者你编写的节点应用程序在长时间运行的过程中占据了事件循环。阿帕奇也可能是猪;你需要做更多的诊断才能找到它的根源。
相关文章:
- 与域在同一台计算机上运行的NODEJS服务器的CORS错误
- Nodejs服务器在解析之前生成输入表单
- Nodejs服务器:加载资源失败:服务器的响应状态为404(未找到)
- NodeJS服务器在检索部分时返回505/404错误
- 将数据发布到nodejs服务器到客户端
- 引用nodejs服务器中html中的java脚本文件
- 正在将数据发送到nodejs服务器
- NodeJs:如何在EC2实例中查看PM2运行的NodeJS服务器的日志
- 为什么我可以't在nodeJS服务器上接收文件
- nodeJS服务器性能缓慢且不稳定
- 需要将数据从NodeJS服务器发送回JQuery客户端
- 如何从本地文件夹(磁盘存储)读取或获取图像文件,并使用nodejs服务器将其发送到Angularjs
- 在nodejs服务器上提供文件的更好方法,而不是if/else
- 如何在 NodeJS 服务器中解析 ajax 发送的数组/对象
- 在 nodejs 服务器端运行传单
- 当我尝试在 couchbase nodejs 服务器上运行简单的测试时,我收到“不正确的参数”错误
- Yeoman 应用程序 - 使用自定义 Nodejs 服务器
- JavaScript 在 nodeJS 服务器上导致错误
- Nodejs 服务器端调试
- 将数据从 Java 客户端发送到 NodeJS 服务器