cat /path/to/nginx/conf/conf.d/upstream/upsgrpcservers.conf
upstream grpcservers {
server 10.161.11.181:8090;
server 10.161.11.180:8090;
server 10.161.11.179:8090;
keepalive 2000;
}
keepalive 2000;
表示在与上游服务器建立 TCP 连接后,该连接将保持开放状态的最长时间为 2000 毫秒(2 秒)。
这个参数设置的目的是为了减少每次请求都要重新建立 TCP 连接的开销,提高性能。
当一个客户端请求到达 Nginx 时,Nginx 会选择一个上游服务器进行转发,如果该上游服务器已经与 Nginx 建立了 TCP 连接,且该连接空闲时间不超过 2000 毫秒,则 Nginx 会重用该连接,避免重新建立连接,从而提高性能。
如果连接空闲时间超过 2000 毫秒,则 Nginx 会关闭该连接,并在下一次请求时重新建立连接。
![](https://img.haomeiwen.com/i12979420/a4d833abf46f8663.png)
参考
nginx grpc streaming负载均衡的排坑和思考
https://xiaorui.cc/archives/5970
技术分享之http2和quic的那些事儿
https://xiaorui.cc/archives/6117
网友评论