我在优步工程公司的网站上看到了这段话,这让我很困惑,如果有人能帮我说清楚的话,我会感谢他/她:
Edge是我们移动应用程序的第一线API,它由600多个无状态端点组成,它们将多个服务连接在一起。它将来自移动客户端的传入请求路由到其他API或服务。它都是用Node.js编写的,除了在边缘,我们的NGINX前端负责SSL终止和一些身份验证。NGINX前端还通过HAProxy负载均衡器代理我们的第一线API。
NGINX已经是一个反向代理+负载均衡器,那么HAProxy负载均衡器在图片中的位置以及它在图片中的确切位置呢?他说的“边缘”是什么?要么是写他的人,要么他写错了字,要么我不懂英语。
请帮帮忙。
发布于 2019-04-02 13:59:21
他们似乎严格地使用HAProxy作为负载均衡器,并严格使用NGINX来终止SSL和进行身份验证。在大多数情况下,没有必要同时使用HAProxy和NGINX,正如您所提到的,NGINX具有负载平衡功能,但作为Uber,它们可能遇到了一些需要同时使用这两种功能的独特问题。根据我所读到的信息,如http://www.loadbalancer.org/blog/nginx-vs-haproxy/和https://thehftguy.com/2016/10/03/haproxy-vs-nginx-why-you-should-never-use-nginx-for-load-balancing/,NGINX作为web服务器工作得非常好,包括它作为节点应用程序的反向代理的用例,但是它的负载平衡功能是基本的,几乎没有HAProxy那样高性能。此外,HAProxy公开了更多用于监视的指标,并具有更高级的路由功能。
负载平衡不是NGINX的核心特性。在node.js应用程序的上下文中,通常您会看到NGINX用作反向代理,这意味着NGINX是web服务器,http请求通过它。然后,根据主机名和其他规则,将HTTP请求转发到运行node.js应用程序的任何端口。作为这个流程的一部分,NGINX通常会处理SSL终端,因此这个计算密集型任务不会被node.js处理。此外,NGINX通常用于为node.js应用程序提供静态资产,因为它更高效,尤其是在压缩资产时。
https://stackoverflow.com/questions/55476114
复制相似问题