PHP将session保存到memcache服务器

WBOY
풀어 주다: 2016-06-20 12:57:11
원래의
763명이 탐색했습니다.


传统的 session 是写入到服务器文件中,可以在 php.ini 中看出,清单如下

[plain] view plaincopy

  • session.save_handler = files  

  • session.save_path = "sess保存路径"  


  • 但是,如果网站用户很多的话,session 的访问将势必影响网站的速度。因为文件的读取速度是很低的。

    众所周知,memcache 作为内存缓存服务器,通过哈希算法,把数据以key->value的形式进行读取,其速度是远远高于文件的读取。

    将 session 保存到 memcache 服务器的配置如下:

    方式一:

    打开 php.ini 文件,修改下面两个参数:

    [plain] view plaincopy

  • session.save_handler = memcache  

  • session.save_path = "tcp://Mem服务器1:端口号,tcp://Mem服务器2:端口号..."  


  • 方式二:

    在 php 文件中使用 ini_set 函数,进行配置,此方法会解决共享服务器的 php 的配置问题

    [php] view plaincopy

  • ....  

  • ini_set("session.save_handler", "memcache");  

  • ini_set("session.save_path", "tcp://Mem服务器1:端口号,tcp://Mem服务器2:端口号...");  

  • ....  

  • ?>  


  • 重启 Web 服务器!

    这时,session 将不会以文件的形式保存,而是保存到 Memcache 服务器,保存的 key 为 session_id

    telnet 到 memcache 服务器,进行 get 查看

    telnet memcache服务器 端口号


    원천:php.cn
    본 웹사이트의 성명
    본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
    인기 튜토리얼
    더>
    최신 다운로드
    더>
    웹 효과
    웹사이트 소스 코드
    웹사이트 자료
    프론트엔드 템플릿