Nginx Session Sticky

摘要:
no_Fallbackup:如果设置了该选项,并且cookie对应的服务器关闭,则将返回502。建议不要启用它。

nginx的粘性session主要通过nginx-sticky-module实现

1下载nginx-sticky-module

下载地址:https://code.google.com/p/nginx-sticky-module/downloads/list

官方文档:https://code.google.com/p/nginx-sticky-module/wiki/Documentation

2 安装

解压nginx-sticky-module到/usr/local

tar -xzf nginx-sticky-module-1.1.tar.gz

进入 nginx 源码目录/usr/local/nginx-1.6.2,执行命令,重新编译:

./configure ... --add-module=../nginx-sticky-module-1.1
make
make install

3 make报错

make的时候可能由于高版本的原因会出现以下错误:

make[1]: *** [objs/addon/nginx-sticky-module-1.1/ngx_http_sticky_misc.o] Error 1
make[1]: Leaving directory `/usr/local/nginx-1.6.2'
make: *** [build] Error 2

解决方法:

nginx-sticky-module-1.1/ngx_http_sticky_misc.c的281行修改为:

digest->len = ngx_sock_ntop(in,sizeof(struct sockaddr_in), digest->data, len, 1);

4 sticky使用

upstream 172.16.0.16 {
        sticky;
        server 172.16.0.17:8180;
        server 172.16.0.17:8280;
        server 172.16.0.18:8180;
        server 172.16.0.18:8280;
    }

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),建议不启用。

如下:

sticky name=routeID expires=1h domain=.test.com path=/;

免责声明:文章转载自《Nginx Session Sticky》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇软件质量属性——安全性SQL Server与Access数据库sql语法的差异下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

tf.Session()函数的参数应用(tensorflow中使用tf.ConfigProto()配置Session运行参数&&GPU设备指定)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/dcrmg/article/details/79091941 tf.ConfigProto()函数用在创建session的时候,用来对session进行参数配置: config = tf.Config...

【转】tomcat 设置 session 过期时间

转自: http://hi.baidu.com/feelixus/blog/item/30c2394ee6f4dbccd0c86ade.html 由于session值之前没有设置,以至于刚登录的网站,不到一分钟就超时了,总结了一下,原来是session过期的原因,以下是设置session时间的3个方法: 1. 在tomcat-->conf-->...

tomcat集群

  概述 Tomcat是J2EE开发当中使用最多的应用服务器,本章就来介绍一下使用Apache2应用服务器加上Tomcat6一起实现应用集群与负载均衡。这里我们使用的Tomcat为7.0.26;Apache版本为2.2,如果您机器上没有,请到www.apache.org上下载,Tomcat7.0.26有两个,我们这里称之为tomcat1和tomcat2,下...

nginx缓存静态资源,只需几个配置提升10倍页面加载速度

nginx缓存静态资源,只需几个配置提升10倍页面加载速度 首先我们看图说话 这是在没有缓存的情况下,这个页面发送了很多静态资源的请求: 1.png 可以看到,静态资源占用了整个页面加载用时的90%以上,而且这个静态资源还是已经在我使用了nginx配置压缩以后的大小,如果没有对这些静态资源压缩的话,那么静态资源加载应该会占用这个页面展示99%以上的时...

使用 MYSQLBINLOG 来恢复数据。

今天在家里做了一下试验,终于搞明白了以前做复制的时候没有搞明白的问题。原来BINLOG就是一个记录SQL语句的过程,和普通的LOG一样。不过只是她是二进制存储,普通的是十进制存储罢了。 1、配置文件里要写的东西: [mysqld] log-bin=yueliangdao_binglog(名字可以改成自己的,如果不改名字的话,默认是以主机名字命名)重新启动M...

用宝塔搭建自己的网站

1.购买服务器 服务器就是电脑,理论上个人电脑也可以,但由于服务器上要部署网站,为了保证网站随时可以访问,就要求服务器不能关机。个人电脑由于没有专门的降温设备,长时间运行CPU扛不住,所以最好还是购买专门的服务器。对于个人以及很多小微企业,也不可能真的去向华为、浪潮等服务器提供商购买物理服务器,因为购买回来还得自建机房,这种情况下我们可以买云服务器,说白了...