大规模网站sesson会话共享思路及实践配置[老男孩培训内部资料分享]
可以直接用memcached来作PHP的session.save_handler解决sesson共享问题
1. 安装memcached服务端软件
略,见老男孩培训相关视频教程或谷歌搜下安装。
注意:memcached用libevent来作事件驱动,所以要先安装libevent。
2. 安装memcache客户端件
略,见老男孩培训相关视频教程或谷歌搜下安装。
3. 真正配置的开始
修改配置文件,在php.ini中全局设置:
web集群session共享存储设置:
默认php.ini中session的类型和配置路径:
#session.save_handler = files
#session.save_path = "/tmp"
修改成如下配置:
session.save_handler = memcache
session.save_path = "tcp://10.0.0.18:11211"
提示:
1)10.0.0.18:11211 为memcached数据库缓存的IP及端口。
2)上述适合LNMP,LAMP环境。
3)memcached服务器也可以是多台通过hash调度。
4、用memcached来存储session特点:
优点:
1)读写速度上会比普通files时快很多。
2)可以解决多个服务器共用session的难题。
缺点:
1)session数据都保存在memory中,持久化方面有所欠缺,但对session数据来说不是问题。
2)单点,部署多台,也无法数据同步。通过hash算法分配依然有sesson丢失的问题。
5、大规模企业解决思路:
2)可以用其他的持久化系统存储sessons,例如:redis,ttserver,替代memcached。
3)高性能高并发场景,cookies效率比session要好很多,因此,大网站都会用cookies解决会话共享问题。
4)有初级运维网友通过牺牲LB的负载均衡的策略实现,例如:lvs -p,nginx ip_hash等,这些不是好的方法。
相关博文:http://oldboy.blog.51cto.com/2561410/1323468
大规模网站sesson会话保持思路及实践配置
推荐 原创
©著作权归作者所有:来自51CTO博客作者老男孩oldboy的原创作品,请联系作者获取转载授权,否则将追究法律责任
下一篇:企业工作爬虫相关上机实战考试题

提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
大规模网站架构
目前我们项目采用的支持高并发,高性能的网站结构解决方案,见附件,附件中得基本跟我们的选择如出一辙~
职场 架构 休闲 大规模网站 -
大规模网络路由配置及分析
网络中路由问题的几点思路
ospf hello 时间