仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 319|回复: 7
打印 上一主题 下一主题

[其他Linux] 给大家带来Nginx中共享session会话设置办法例子

[复制链接]
若相依 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 16:13:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
RedHatCentOS等等.学习linux不是逛自由市场,选定版本就要静下心来学习.不要今天换版本明天要升级.这样对你没有好处。
Session一样平常都指时域。在盘算机术语中,Session是指一个终端用户与交互体系举行通讯的工夫距离,一般指从注册进进体系到刊出加入体系之间所经由的工夫和假如必要的话,大概另有必定的操纵空间。
Session一样平常都指时域。在盘算机术语中,Session是指一个终端用户与交互体系举行通讯的工夫距离,一般指从注册进进体系到刊出加入体系之间所经由的工夫和假如必要的话,大概另有必定的操纵空间。
一般情形下能把session改成cookie,就可以避开session的一些坏处,在夙昔看的一本J2EE的书上,也指明在集群体系中不克不及用session,不然惹出祸根来就欠好办。假如体系不庞大,就优先思索可否将session往失落,修改起来十分贫苦的话,再用上面的举措。
使用服务器自行完成共享
已知的,php能够用数据库或memcached来保留session,从而在php自己创建了一个session集群,用如许的体例能够令session包管不乱,即便某个节点有妨碍,session也不会丧失,合用于较为严厉但哀求量不高的场所。可是它的效力是不会很高的,不合用于对效力请求高的场所。
以上两个举措都跟nginx没甚么干系,上面来讲说用nginx该怎样处置:
ip_hash
nginx中的ip_hash手艺可以将某个ip的哀求定向到统一台后端,如许一来这个ip下的某个客户端和某个后端就可以创建起安定的
session,ip_hash是在upstream设置中界说的:
代码以下:

upstreambackend{
server127.0.0.1:8001;
server127.0.0.1:8002;
ip_hash;
}

ip_hash是简单了解的,可是由于仅仅能用ip这个因子来分派后端,因而ip_hash是出缺陷的,不克不及在一些情形下利用:
1、nginx不是最前真个服务器。ip_hash请求nginx必定是最前真个服务器,不然nginx得不到准确ip,就不克不及依据ip作hash。比如利用的是squid为最前端,那末nginx取ip时只能失掉squid的服务器ip地点,用这个地点来作分流是一定庞杂的。
2、nginx的后端另有别的体例的负载平衡。假设nginx后端又有别的负载平衡,将哀求又经由过程别的的体例分流了,那末某个客户真个哀求一定不克不及定位到统一台session使用服务器上。这么算起来,nginx后端只能间接指向使用服务器,大概再搭一个squid,然后指向使用服务器。最好的举措是用location作一次分流,将必要session的部分哀求经由过程ip_hash分流,剩下的走别的后端往。
upstream_hash
为懂得决ip_hash的一些成绩,可使用upstream_hash这个第三方模块,这个模块多半情形下是用作url_hash的,可是其实不妨害将它用来做session共享:
假设前端是squid,他会将ip到场x_forwarded_for这个http_header里,用upstream_hash能够用这个头做因子,将哀求定向到指定的后端:
代码以下:
hash$http_x_forwarded_for;

如许就改成了使用x_forwarded_for这个头作因子,在nginx新版本中可撑持读取cookie值,以是也能够改成:
代码以下:
hash$cookie_jsessionid;


虽然Linux桌面应用发展很快,但是命令在Linux中依然有很强的生命力。Linux是一个命令行组成的操作系统,精髓在命令行。
冷月葬花魂 该用户已被删除
沙发
发表于 2015-1-18 16:34:04 | 只看该作者
安装一个新的软件时先看README,再看INSTALL然后看FAQ,最后才动手安装,这样遇到问题就知道为什么。如果Linux说明文档不看,结果出了问题再去论坛来找答案反而浪费时间。
谁可相欹 该用户已被删除
板凳
发表于 2015-1-25 05:43:36 | 只看该作者
清楚了解网络的基础知识,特别是在Linux下应用知识,如接入internet等等。
莫相离 该用户已被删除
地板
发表于 2015-2-2 17:15:09 | 只看该作者
Linux操作系统这个名词记得在很早以前就听过,但当时并不知道具体是什么样的操作系统,只知道是一个与嵌入式密切相关的操作系统。
蒙在股里 该用户已被删除
5#
发表于 2015-2-24 04:35:23 | 只看该作者
说实话小时候没想过搞IT,也计算机了解也只是一些皮毛,至于什么UNIX,Linux,听过没见过,就更别说用过了。?
飘飘悠悠 该用户已被删除
6#
发表于 2015-3-7 11:04:14 | 只看该作者
尽我能力帮助他人,在帮助他人的同时你会深刻巩固知识。
变相怪杰 该用户已被删除
7#
发表于 2015-3-15 04:15:16 | 只看该作者
通过自学老师给的资料和向同学请教,掌握了一些基本的操作,比如挂载优盘,编译程序,在Linux环境下运行,转换目录等等。学了这些基础才能进行下面的模拟OS程序。?
admin 该用户已被删除
8#
发表于 2015-3-21 19:22:34 | 只看该作者
其实当你安装了一个完整的Linux系统后其中已经包含了一个强大的帮助,只是可能你还没有发现和使用它们的技巧。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-17 07:27

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表