假设我有 1 台 nginx 前端服务器,它将负载平衡到 2 台应用服务器并需要会话持久性。
我可以像这样建立一个上游组。
上游后端 {
哈希 $request_uri 一致;服务器后端1;服务器后端2;}
如果请求总是有一个名为“x-user-name”的 HTTP 标头,我希望我可以这样做:
哈希$http_x_user_name一致;
但它似乎对我不起作用。
有人知道这是否可行吗?或者上游上下文中有哪些变量可用?
我也尝试过 $sent_http_x_user_name 和 $upstream_http_x_user_name。
非常感谢您的帮助!
注意:nginx 仅限开源,不是专业版,因为如果可以选择的话我会使用“sticky”。
山姆
答案1
看来这确实有效。从哈希中删除一致性可确保其更好地平衡。我将 nginx 置于调试状态,输出显示它正在运行。