是什么让nginx/apache成为web服务器,而HAProxy不是



是什么让nginx/apache成为web服务器,而不是HAProxy?

作为一个网络服务器,HAProxy缺少什么功能?

HAProxy可以在端口80上侦听并可以说HTTP,但这不是人们说的"web服务器"的意思。

HAProxy不是一个web服务器,因为"web服务器"意味着一个HTTP端点,它可以提供文件中的静态内容和/或代码中生成的动态内容。这不是HAProxy的作用。

从技术上讲,HAProxy中的某些功能可以被滥用来模拟web服务器的某些功能——您可以从内存缓冲区中提供非常小的静态文件,也可以使用可选的嵌入式Lua解释器生成小的动态响应——但它不是用来或设计用来作为web服务器的。它是一个代理服务器——向客户端模拟web服务器,向其背后的真实后端web服务器模拟客户端——因为双向模拟通常是代理所做的

使用Nginx和Apache,您可以指定提供文件的根目录,还可以指定要由运行在Perl、PHP、Python等语言中的代码提供服务的路径。不使用HAProxy,因为这不是它的设计初衷。

Nginx和Apache也可以用作代理服务器,就像HAProxy一样,但HAProxy是专门为这一主要目的设计和优化的——针对多个后端进行代理和负载平衡,使用各种规则和算法选择后端。。。从本质上讲,HAProxy是HTTP请求的"中间路由器",传递它们而不是响应它们。它还可以代理和负载平衡依赖TCP的非HTTP协议。

最新更新