PHP提高SESSION响应速度的几种方法

1.设置多级目录存储SESSION
默认session的存储目录是1级目录,如果用户量比较大,session文件数量就比较大,我们可以设置目录数为2,使用2级目录可以提交查找和存取速度。不过这种方式对速度的提升一般不是很明显,可以通过修改php.ini,进而修改session存储目录数。
[success]session.save_path = "2;/tmp"[/success]

2.将SESSION存储到redis中
php中的session默认是存储在文件中的,支持redis存储方式,因为redis的键值数据时存储在内存中的,可以提高session的存取速度。
[success]session.save_handler = redis
session.save_path = "tcp://127.0.0.1:6379"[/success]

3.使用Memcache来保存Session。很显示,用文件保存session和用Memcache保存session,Memcache有明显优势。
[success]session.save_handler = memcache
session.save_path = "tcp://127.0.0.1:11211"[/success]

及时释放SESSION文件锁
我们在使用session时,需要先执行session_start()函数。

session_start()函数的作用如下:

判断http请求是否包含名为PHPSESSID的cookie,如果没有则创建该cookie并写入到http响应的头文件。
通过PHPSESSID查找对应的session文件,以读写方式打开的文件,然后读取里面的数据到内存。

然后我们一般会通过$_SESSION这个超全局变量,读取或者设置session的值,我们操作的时候,session的值都是保存在内存中的,默认在页面执行完毕之后,才会写入到对应的文件中。

人已赞赏
运维笔记

DD/ISO-WinSrv2012r2x64-数据中心版-精简,支持KVM/Xen/Hyper

2018-12-12 16:31:55

运维笔记

Linux下增加Sawp分区

2018-12-21 13:14:05

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索