直到第一个用户完毕 ,第二个才能启用。开始读取。这便是session壅塞。
session 默认以文件保存,当一个用户访问session_start页面后。这个时候,就会默认创建一个包含 session_id文件名,并且这个时候。会对文件进行锁定。如果这个用户点击链接。又访问一个该站的session文件,由于 第一个页面没有实行完。他一贯锁定了该文件。以是第二个页面就不能获取锁,一贯处于等待状态、。这样如果是网站上有大量的用户访问,会导致session读取文件一贯壅塞等待着,用户浏览器一贯跟做事器保持连接买回花费很多做事器资源 、web 做事站生动连接数也会增大。可能就会耗费完连接资源。涌现谢绝做事器。
------用memcache 存放用户session
用memcache 保存用户session ,比较读取文件有很大速率提升。而且可以做到做事器共享session 确实很方便,这个时候就不会涌现 用文件session 锁定清理、memcached 读取时候,是共享的,不会涌现等待,但是我们创造。memcached 连接数。还是会保持着,并且,连接数会增加。如果这个时候。你设置的memcached连接数过小。你会创造。很快memcached 就挂去世了。 这也是长涌现的问题。,有时候web 做事器很多,session(memcache)很少,创造memcache 莫名去世掉。可能跟这个有关系。太多的反响很慢的页面(启用session) ,会大道至占用太多的memcached连接数。
改变session利用习气、优化调用方法
实在,通过file或者session,如果处理耗时页面,都会带来做事器资源很大花费。
实我们一样平常写入session或者读取时候,如果自己能够掌握。
用完了,就关闭掉文件锁,或者mem连接。就会自动开释资源,实在,php里面的:session_write_close,session_commit 函数就能做到改功能。