amazon-web-services - 如果我们有用于 Node 应用程序的 AWS 应用程序负载均衡器,Nginx 会变得多余吗?
问题描述
我有一个在 AWS 上运行的 Node 应用程序。投入生产时,它很有可能会收到大量请求。我计划使用 AWS ECS 托管它,并且在应用程序前面会有一个 AWS 应用程序负载均衡器。当我查看“如何在生产中部署 Node 应用程序”时,我看到每个人都在建议在 Node 应用程序前面使用 Nginx。
我的疑问是,如果我们在架构中有 ALB,我们是否还需要添加 Nginx?如果我们需要为 100 万用户托管应用程序,使用 Nginx 有什么好处吗?
解决方案
这取决于您如何使用 NGINX 进行负载平衡。应用程序负载均衡器确实带来了许多可以使 NGINX 在您的架构中变得冗余的功能,但它并不完全像 NGINX 那样先进。例如 ALB 只使用轮询负载均衡,而您可以配置 nginx 为轮询、最少连接等。ALB 没有任何缓存能力,而 nginx 提供静态内容缓存。ALB 仅使用基于路径的路由,而 nginx 可以根据请求标头、cookie 或参数以及请求 URL 进行路由。
进一步阅读和来源:https ://www.nginx.com/blog/aws-alb-vs-nginx-plus/
注意:使用 nginx 的另一个重要事实是与云无关。因此,如果您打算切换云提供商,您可以随身携带 nginx 设置。
推荐阅读
- javascript - 响应转换器错误:未找到策略
- authentication - gcloud 身份令牌与访问令牌
- python - 狮身人面像 bibtex 引用列表枚举
- python - 将无限线程作为函数传递
- gmail - Gmail 的 iCalendar 小部件未呈现超过 1 个事件
- image-processing - 在多个图像上查找未更改的区域
- android - Android 调试模式下的 shadow$_klass_ 是什么?
- jquery - 在元素之前只插入一个结束标签?
- robotjs - RobotJS,如何在 Mac 上执行 shift 单击或命令单击?
- javascript - 如果更新失败,猫鼬 findByIdAndUpdate 会返回什么?