回答
收藏
分享
举报
Nginx 反向代理为什么可以提高网站性能?
提问于2020-05-07 18:05

浏览 6.1k

如果作为纯粹的反向代理服务器,不做任何缓存,也没有静态文件服务,每一个请求都转发到后端,这样还能提高性能吗?
已修改于2023-03-17 02:09



写下您的回答
发表回答
全部回答(4)

按点赞数排序

按时间排序

对于后端是动态服务来说,比如Java和PHP。这类服务器(如JBoss和PHP-FPM)的IO处理能力往往不高。Nginx有个好处是它会把Request在读取完整之前buffer住,这样交给后端的就是一个完整的HTTP请求,从而提高后端的效率,而不是断断续续的传递(互联网上连接速度一般比较慢)。同样,Nginx也可以把response给buffer住,同样也是减轻后端的压力。
赞同

2

回复举报

回答于2020-05-07 18:17



回复火男
回复
阿尔巴回复了
厉害

0

回复举报

回答于2020-05-08 06:44



回复阿尔巴
回复

1、因为多了一层Nginx,所以单个请求的时延是肯定增加了,从这个角度讲性能是下降的;

2、因为上游可以有多个后端Server,所以并发能力上升了,总的吞吐量也上升了,这个角度性能还是提升的。

赞同

1

回复举报

回答于2020-09-10 17:07



回复陶辉
回复

可以做负载均衡

赞同

0

回复举报

回答于2021-07-23 17:07



回复阿拉灯神丁
回复

一个反向代理的服务器抛开所有业务层的东西,只单纯的接下请求再返回,那么可以支持到20000并发了。接下来应用层面谁来处理?找来10个小弟,转发给他们,每人2000正好。这样这个节点系统虽然性价比只有10/11,但是性能潜力好歹挖尽了。

赞同

0

回复举报

回答于2020-05-08 10:38



回复xixihaha
回复
提问者
0守望0
这家伙很懒还未留下介绍~
1
文章
1
问答
1
粉丝
相关问答

导致502的一个常见原因,是三次握手建立失败了,你可以用netstat统计下,是否存在报文丢失等情况,如果是的话,报502就是正常的,此时你可以通过Nginx的next upstream机制,在Nginx层通过重新转发请求把502错误化解掉。

点赞 0
浏览 7.8k

$arg_a就可以取到22.123213

点赞 0
浏览 3.6k

其实当 TLS(Transport Layer Security)版本过时的时候,存在有安全隐患的话,看看这几个方法:


1. 升级 TLS 版本,老版本估计不太好用,估计升级到 TLS 1.2 或更高就应该差不多

2. 把不安全的加密套件都禁止掉

3. 设置监测和日志记录,后面要是有问题还能早点解决

4. 看看 SSL/TLS 证书是不是最新的,证书过期也可能有连接错误或安全问题,这个时候可以顺带着把防火墙配置,IDS,IPS 啥的更新一下。

最后也没啥别的办法,就是定期审查更新了。

点赞 0
浏览 5.2k