`
流浪鱼
  • 浏览: 1682263 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

nginx-sticky-module的使用(基于cookie的会话保持)

 
阅读更多

在多台后台服务器的环境下,我们为了确保一个客户只和一台服务器通信,我们势必使用长连接。使用什么方式来实现这种连接呢,常见的有使用nginx自带的ip_hash来做,我想这绝对不是一个好的办法,如果前端是CDN,或者说一个局域网的客户同时访问服务器,导致出现服务器分配不均衡,以及不能保证每次访问都粘滞在同一台服务器。如果基于cookie会是一种什么情形,想想看, 每台电脑都会有不同的cookie,在保持长连接的同时还保证了服务器的压力均衡,nginx sticky值得推荐。

如果浏览器不支持cookie,那么sticky不生效,毕竟整个模块是给予cookie实现的。

nginx sticky其他语法

sticky [name=route] [domain=.foo.bar] [path=/] [expires=1h] [hash=index|md5|sha1] [no_fallback];
name: 可以为任何的string字符,默认是route
domain:哪些域名下可以使用这个cookie
path:哪些路径对启用sticky,例如path/test,那么只有test这个目录才会使用sticky做负载均衡
expires:cookie过期时间,默认浏览器关闭就过期,也就是会话方式。
no_fallbackup:如果设置了这个,cookie对应的服务器宕机了,那么将会返回502(bad gateway 或者 proxy error),建议不启用

 

分享到:
评论

相关推荐

    nginx-sticky-module-ng-1.2.6.tar.gz

    Nginx 的 sticky 模块便为此目的而设计,它允许我们实现基于特定条件的会话保持策略。 Nginx Sticky Module Ng 是 Nginx 官方 sticky 模块的一个增强版本,提供了更灵活的配置选项和更好的性能。版本 1.2.6 是该...

    nginx-goodies-nginx-sticky-module-ng-08a395c66e42.zip

    Sticky是nginx的一个模块,它是基于cookie的一种nginx的负载均衡解决方案,通过分发和识别cookie,来使同一个客户端的请求落在同一台服务器上,默认标识名为route (a)客户端首次发起访问请求,nginx接收后,发现...

    nginx-sticky-module-1.1

    总结,Nginx sticky module 1.1 提供了在 Nginx 负载均衡环境中实现会话持久化的能力,适用于多种需要保持会话连续性的业务场景。通过灵活的配置和多种分配算法,它可以有效地优化分布式系统的性能和稳定性。在实际...

    nginx-goodies-nginx-sticky-module-ng-s12451asdasd

    目前的项目网站架构中使用了F5和nginx,F5用来做负载均衡,nginx只用作反向代理服务器。最近应客户的要求准备去掉F5...上网搜索了一番,知道了nginx-sticky-module这个第三方模块可以基于cookie实现会话保持,决定试试

    nginx-sticky-module-1.26

    除了基本的cookie模式,`nginx-sticky-module` 还支持基于IP地址的粘滞会话,以及更复杂的哈希算法来实现会话持久化。此外,还可以配置其他的参数,如cookie的过期时间、安全性(是否只通过HTTPS传输cookie)等。 ...

    Ubuntu下nginx1.6和sticky1.1安装配置资料 包

    这里,`sticky cookie`指令用于设置基于cookie的会话持久化。`name`参数定义cookie的名称,`expires`定义其有效期,`domain`则指定cookie的作用域。 启动Nginx服务: ```bash sudo /usr/local/nginx/sbin/nginx ``...

    nginx-sticky模块

    Nginx Sticky模块通过在客户端的请求中添加一个特定的cookie来实现会话持久化。当客户端的第一次请求到达Nginx时,Nginx会根据负载均衡策略选择一台后端服务器处理请求,并将该服务器的标识(如IP地址或端口号)写入...

    nginx-sticky 不报错版

    而 `sticky` 模块是 Nginx 的一个扩展模块,用于实现会话持久化,即在负载均衡中保持用户请求始终被分配到同一台后端服务器,以确保某些依赖于会话状态的应用程序能够正常运行。 **会话持久化的概念** 会话持久化...

    nginx cookie模块

    本文将深入探讨Nginx的Cookie模块,特别是`nginx-sticky-module-ng`,它是对原生Nginx功能的增强,帮助运维人员更灵活地管理会话。 ### 一、Cookie模块基础 Cookie是Web服务器在客户端存储的小型文本文件,通常...

    linux环境下通过nginx实现tomcat集群.pdf

    2. JVM-Remote 补丁:这是一个Nginx的扩展模块,允许基于Cookie的Session Sticky功能,保持用户的会话粘滞在同一台Tomcat服务器上。 接下来,按照以下步骤进行安装和配置: 1. 下载所需软件: - Nginx:访问...

    linux下nginx安装配置相关资源

    这里,`proxy_pass`指定后端服务器组,`sticky`指令用于开启会话持久化,`cookie`参数定义了如何在cookie中存储服务器标识。 四、启动与管理Nginx 1. 启动Nginx:`sudo systemctl start nginx` 或者 `sudo ...

    linux环境下通过nginx实现tomcat集群借鉴.pdf

    这里的`jvm_route`指令使用了$cookie_JSESSIONID|sessionid,这意味着Nginx会根据客户端发送的JSESSIONID Cookie值来决定将请求路由到哪个Tomcat实例,从而实现Session Sticky。 5. 启动Nginx和Tomcat服务: 启动...

    Nginx+Tomcat+Memcached实现tomcat集群和session共享.docx

    使用第三方模块如`nginx-session-memcached`或`ngx_http_upstream_session_sticky_module`,将session数据转发到Memcached服务器。 ```nginx location / { proxy_pass http://tomcat_cluster; proxy_set_...

    nginx实现多个tomcat7直接session共享所需jar包

    Nginx可以配置成使用 sticky module 或者 upstream模块,通过特定的负载均衡策略,如IP哈希,确保来自同一用户的请求总是被转发到同一台Tomcat服务器。但这仅解决了部分问题,如果所有服务器需要共享Session数据,还...

Global site tag (gtag.js) - Google Analytics