`
275553385
  • 浏览: 724575 次
  • 性别: Icon_minigender_1
  • 来自: 无锡
文章分类
社区版块
存档分类
最新评论

memcache存储php session

阅读更多

设置session用memcache来存储 

方法I: 在 php.ini 中全局设置 

Php.ini代码  收藏代码
  1. session.save_handler = memcache  
  2. session.save_path = "tcp://127.0.0.1:11211"  


方法II: 某个目录下的 .htaccess 

Php.ini代码  收藏代码
  1. php_value session.save_handler "memcache"  
  2. php_value session.save_path  "tcp://127.0.0.1:11211"  



方法III: 再或者在某个一个应用中 

Php代码  收藏代码
  1. ini_set("session.save_handler""memcache");  
  2. ini_set("session.save_path""tcp://127.0.0.1:11211");  



使用多个 memcached server 时用逗号","隔开,并且和 Memcache::addServer() 文档中说明的一样,可以带额外的参数"persistent"、"weight"、"timeout"、"retry_interval" 等等,类似这样的:"tcp://host1:port1?persistent=1&weight=2,tcp://host2:port2" 。 

如果安装的PECL是memcached(依赖libmemcached库的那个扩展),则配置应为 

Php代码  收藏代码
  1. ini_set("session.save_handler""memcached"); // 是memcached不是memcache  
  2. ini_set("session.save_path""127.0.0.1:11211"); // 不要tcp:[/b]  



代码例子(不依赖libmemcached库的那个) 

Php代码  收藏代码
  1. <?php  
  2. session_start();  
  3. if (!isset($_SESSION['TEST'])) {  
  4.     $_SESSION['TEST'] = time();  
  5. }  
  6.    
  7. $_SESSION['TEST3'] = time();  
  8.    
  9. print $_SESSION['TEST'];  
  10. print "<br><br>";  
  11. print $_SESSION['TEST3'];  
  12. print "<br><br>";  
  13. print session_id();  
  14. ?>  


用 sessionid 去 memcached 里查询一下: 

Php代码  收藏代码
  1. <?php  
  2. $memcache = memcache_connect('localhost', 11211);  
  3. var_dump($memcache->get('19216821213c65cedec65b0883238c278eeb573e077'));  
  4. $memcache->set('aaaa''hello everyone');  
  5. var_dump($memcache->get('aaaa'));  
  6. ?>  



会看到 
string(37) "TEST|i:1177556731;TEST3|i:1177556881;" 
这样的输出,证明 session 正常工作。

 

分享到:
评论

相关推荐

    PHP实现多服务器session共享之memcache共享.rar

    "PHP实现多服务器session共享之memcache共享"的主题着重于如何在多台服务器之间有效地存储和同步用户的session数据,以确保用户在不同服务器间的会话状态能够保持一致。本文将深入探讨这一主题,并围绕相关知识点...

    session共享之memcache Redis

    将Session数据存储在memcache中,可以让多台服务器通过网络访问同一个Session,实现Session共享。在PHP中,可以使用`memcached`扩展来操作memcache。例如,`SessionMemcache.php`文件可能包含了以下代码: ```php $...

    基于php使用memcache存储session的详解

    PHP与Memcache存储session详解: PHP作为服务器端脚本语言,广泛应用于Web开发领域。为了提升网站性能,PHP经常与Memcache配合使用,Memcache是一种高性能的分布式内存对象缓存系统,它可以用来存储PHP会话数据,...

    PHP中使用memcache存储session的三种配置方法

    配置文件 复制代码 代码如下: session.save_handler = memcache //设置session的储存方式为memcache memcache.hash_strategy = “consistent”//设置memcache的hash算法 session.save_path = “tcp://127.0.0.100:...

    PHP 实现多服务器session共享之memcache共享

    使用memcache存储session数据时,注意数据的加密和安全传输。虽然memcache本身不提供加密,但可以在应用程序层进行数据加密,防止敏感数据泄露。 6. **性能监控和优化**: 在实际运行中,需要定期检查memcache...

    Ubuntu server 11.04安装memcache及php使用memcache来存储session的方法

    本文实例讲述了Ubuntu server 11.04安装memcache及php使用memcache来存储session的方法。分享给大家供大家参考,具体如下: 1、首先安装memcache服务端: sudo apt-get install memcached 安装完成后系统 自动启动...

    PHP基于memcahe的session方法重写

    使用memcache存储session数据时,需要注意数据的安全性。由于memcache不提供内置的加密功能,因此敏感的session数据(如用户密码)应先进行加密再存储。同时,确保memcache服务器只接受来自可信源的连接。 通过...

    php session 多服务器的共享

    编写一个类(如`MemcacheSession`),继承PHP的`SessionHandlerInterface`接口,覆盖其`open`, `close`, `read`, `write`, `destroy`, 和 `gc`等方法,以使用Memcache存储Session数据。 示例代码: ```php ...

    memcache_php使用测试

    - **session.save_handler** 和 **session.save_path**: 分别用于指定会话处理方式和会话存储路径,将save_handler设为memcache,即可利用memcache进行会话管理,同时,通过定义save_path中的服务器链接,可以实现跨...

    win下php-memcache5.4;5.2;5.3扩展和memcache服务端

    Memcache是一个广泛使用的高性能分布式内存对象缓存系统,它可以用来存储数据,如数据库查询结果、session数据等,以提高网站的性能。 PHP-Memcache扩展是PHP与Memcache进行交互的桥梁,允许PHP代码直接存取和操作...

    php_memcache.dll

    Memcached是一款高性能的分布式内存对象缓存系统,它能够存储和检索数据,包括动态网页应用中的session和对象,以减轻数据库的负担。在PHP中,使用Memcache扩展可以实现快速访问和存储数据,提高网站的性能。 **...

    PHP保存session到memcache服务器的方法

    本文实例讲述了PHP保存session到memcache服务器的方法。分享给大家供大家参考,具体如下: 传统的 session 是写入到服务器文件中,可以在 php.ini 中看出,清单如下 session.save_handler = files session.save_...

    thinkPHP多域名情况下使用memcache方式共享session数据的实现方法

    5. **处理session数据一致性**:在使用Memcache存储session数据时,需要注意数据的一致性问题。由于Memcache是非持久化的,当服务器重启或memcache服务出现问题时,session数据可能会丢失。为避免这种情况,可以考虑...

    PHP实现多服务器session共享之memcache共享

    PHP是一种广泛使用的服务器端脚本语言,它默认的session存储机制并不适用于多服务器环境。为了解决这个问题,开发者通常会利用外部存储服务,如memcached,来实现session共享。本文将深入探讨如何使用PHP和memcached...

    在php中设置session用memcache来存储的方法总结

    memcached提供了一个自定义的session处理器可以被用于存储用户session数据到memcached服务端,下面通过本文给大家介绍在php中设置session用memcache来存储的方法总结,对php session memcache相关知识感兴趣的朋友...

Global site tag (gtag.js) - Google Analytics