多台服务器实现Session的共享

巴扎黑
发布: 2016-11-09 11:13:36
原创
1588 人浏览过

 我们知道,Session是针对HTTP协议的局限性而提出的一种保持客户端和服务器间保持会话连接状态的机制。
    访问网站的来客会被分配一个唯一的标识符,即所谓的会话 ID。它要么存放在客户端的 cookie,要么经由 URL 传递。
    Session 的存储方式默认是以文件的形式存放在本地的一个硬盘目录中,所以当Session比较多时,磁盘读取文件会比较慢。还有一点就是对于大站点,它无法实现多台服务器会话的共享。
    一个解决方案是用数据库来存取 Session ,就能在不同服务器之间共享 session 信息了。
    实现代码下载
    引擎 MyISAM 最好替换成 MEMORY 引擎,因为 MEMORY 采用内存表,所有数据存储在内存,操作速度快,对于 Session 这种形式的数据正好适用。
    在大流量的网站中,session 入库存在效率不高、占据数据库 connection 资源等问题。针对这种情况,可以使用 Memcached、Redis 等 Key-Value 数据存储方案实现高并发、大流量的 Session 存储。

相关标签:
php
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!