请求如果直接发到同步处理的后端,那么从收到请求到把响应发出去这段时间,一个进程的资源就被占用了(比如Apache的prefork模式)。在慢连接的情况下,这个进程除了处理之外的大多数时间基本上都耗费在了无意义的等待上。Nginx在这方面的优势就在于它的异步非阻塞模型。这意味着Nginx可以通过基于事件的方式同时处理和维护多个请求,而后端就只需要去做逻辑计算,节约了等待时间去处理更多的请求。
如果同时部署在一台机器上,不会对性能有提升,在高并发下性能反而会下降,本来建立一次tcp连接就完事了,因为有个返向代理还得再多做一次,在高并发的情况下肯定有性能损失。
反向代理提高网站性能主要通过三个方面:
1,反向代理可以理解为7层应用层的负载均衡,使用负载均衡之后可以非常便捷的横向扩展服务器集群,实现集群整体并发能力、抗压能力的提高。
2,通常反向代理服务器会带有本地Cache功能,通过静态资源的Cache,有效的减少后端服务器所承载的压力,从而提高性能
3,http压缩,开启压缩后,网络流量传输减小,相同带宽下可以服务更多用户
以上就介绍了 Nginx 反向代理,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。