美文网首页
nginx会话保持之nginx-sticky-module模块

nginx会话保持之nginx-sticky-module模块

作者: ebayboy | 来源:发表于2019-05-30 11:14 被阅读0次

    nginx会话保持之nginx-sticky-module模块

    在使用负载均衡的时候会遇到会话保持的问题,常用的方法有:

    1.ip hash,根据客户端的IP,将请求分配到不同的服务器上;

    2.cookie,服务器给客户端下发一个cookie,具有特定cookie的请求会分配给它的发布者,

    注意:cookie需要浏览器支持,且有时候会泄露数据

    模块下载:

    git clone https://github.com/liuhaoXD/nginx-sticky-module-ng.git

    使用--add-module加入sticky模块, 编译nginx

    1.Sticky工作原理

    Sticky是nginx的一个模块,它是基于cookie的一种nginx的负载均衡解决方案,通过分发和识别cookie,来使同一个客户端的请求落在同一台服务器上,默认标识名为route

    1.客户端首次发起访问请求,nginx接收后,发现请求头没有cookie,则以轮询方式将请求分发给后端服务器。

    2.后端服务器处理完请求,将响应数据返回给nginx。

    3.此时nginx生成带route的cookie,返回给客户端。route的值与后端服务器对应,可能是明文,也可能是md5、sha1等Hash值

    4.客户端接收请求,并保存带route的cookie。

    5.当客户端下一次发送请求时,会带上route,nginx根据接收到的cookie中的route值,转发给对应的后端服务器。

    相关文章

      网友评论

          本文标题:nginx会话保持之nginx-sticky-module模块

          本文链接:https://www.haomeiwen.com/subject/fcemtctx.html