Nginx的upstream机制概述
2019-11-28 本文已影响0人
吕艳凯
对于使用了upstream的nginx,在处理请求和响应数据的时候是有区别的。
在处理请求数据时,是将请求的数据包先缓存起来,待数据包接收完毕,再与上游服务器建立TCP连接,这样有助于缓解上游服务器的压力,因为在通常情况下,下游服务器的TCP连接时公网,而上游服务器的TCP连接时内网,假如客户端发送了一个10M的数据,分为每次10K发送,如果采用边接边发送的方式,则上游服务器需要一直维护TCP连接,造成上有服务器多余的资源占用。
而在处理响应时,也是因为下游与上游的网络差异,则是边接收边发送,即使如此,因为接收的快,发送的慢,下游服务器仍然需要建立缓存区来缓存上游服务器的响应。
截图来自于《深入理解Nginx模块开发与架构解析第2版》





