node express vhosts VS NGINX 服务器上的多个节点应用程序

Posted

技术标签:

【中文标题】node express vhosts VS NGINX 服务器上的多个节点应用程序【英文标题】:node express vhosts VS multiple node applications on NGINX server 【发布时间】:2017-11-03 16:35:42 【问题描述】:

是否有可能通过此信息获得“拥有和想法”的答案? :

在性能方面(基本上是速度)

问题 1

1:最好在 nginx 服务器上设置什么:

考虑域:

http://example1.com https://example2.com https://example3.com https://example4.com https://mailserver.example3.com https://mailserver.example4.com2 https://sub1.example2.com https://sub2.example2.com https://sub3.example2.com

所有域和子域都可能允许用户在所有域/子域上使用 Passport 通过一个身份验证进行连接

A)一个(一个)节点应用程序的 Nginx 虚拟主机,每个域都有多个快速虚拟主机。 (我知道在这种情况下,当我必须更新一个站点时,我必须重新启动所有域)

B) 每个域的每个节点应用程序的 Nginx 虚拟主机。

问题 2

2) 如果还想将此服务器用于,比如说,两个额外的带有 php 的 ssl api,它会改变这种性能吗?

提前致谢。

【问题讨论】:

【参考方案1】:

不使用具体的速度测试工具(现在仍然可以这样做)

我设法将节点应用程序设置为 1) 一个应用程序使用 express 服务于多个 vhost 和 2) 每个域的每个应用程序使用 pm2 和 pm2 显示在两种情况下使用的相同内存。

那么就速度而言,在低网络要求的两种情况下,我似乎几乎相同。 (仍然没有设法在 jmeter 之类的工具中做到这一点)

为了方便自动回复我的问题:

问题 1: 如果我在一个应用程序中设置网站,我会消耗更少的内存(因为只会在使用网站时使用)。并且递归使用网站时速度不会有太大差异。

问题 2: 我将添加到此服务器的 PHP 站点将在相同的情况下(数量)影响每个 案例。

我的决定是使用单独的应用程序,以便在需要时轻松移动到另一台服务器。

谢谢

【讨论】:

我读到 vhost 包正在做一些昂贵的操作(正则表达式、条件、验证)来模拟 nginx 前端 http-proxy,所以我猜你最好使用 nginx

以上是关于node express vhosts VS NGINX 服务器上的多个节点应用程序的主要内容,如果未能解决你的问题,请参考以下文章

将 Node.js 的 Express 与 vhost 一起使用时出现意外错误

Node.js / Express with vhost 与 Sails.js 框架应用程序冲突

带有 vhost 和 greenlock-express 的 NodeJS 子域

Node.js:为虚拟主机(vhost)使用站点地图

在通过 VHOST 连接的 node.js 应用程序之间共享 404 页面

VS Code 调试Node.js express网站