`

php 使用memcache缓存数据

 
阅读更多

安装xampp,使用php memcache的扩展之后,默认php的session是存储在文件里的,但是对于大型网站做分布式的需求,需要共享session,可以借助memcache进行共享session

 

转:

Memcache和PHP memcach扩展安装请见http://koda.iteye.com/blog/665761 

设置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 正常工作。
分享到:
评论

相关推荐

    Memcache缓存技术,Memcache配置说明及其文件,PHP5.2.6版本内存缓存技术配置

    在本主题中,我们将详细探讨Memcache缓存技术,特别是针对PHP5.2.6版本的配置以及在Windows操作系统的应用。 首先,理解Memcache的基本原理至关重要。Memcache的工作机制是在内存中存储数据,当应用程序需要访问...

    memcache缓存配置包(dll,memched,配置方法)

    - 考虑使用持久化策略,防止服务器重启时丢失缓存数据。 6. **标签相关知识**: - **Memcache**: 是一种缓存技术,适用于多种语言,但在这里特指PHP的扩展。 - **Memcached**: 是一个开源的、高性能的分布式内存...

    MemCache对象缓存应用

    1. **Web应用加速**:对于高并发的Web应用,使用MemCache缓存常用数据,可以显著减少数据库的读取压力。 2. **减少数据库负载**:避免大量重复的数据库查询,提高数据库的使用寿命。 3. **Session共享**:在分布式...

    memcache分布式缓存的使用

    4. **客户端连接**:为了使用Memcache,你需要一个支持Memcache协议的客户端库,例如PHP的PECL扩展或Python的pylibmc库。 **Memcache的使用** 1. **连接与断开**:在编程中,首先要建立与Memcache服务器的连接,...

    PHP 5.4 使用的 memcache

    不过需要注意的是,Memcache不提供数据持久化,一旦服务重启,所有缓存数据都会丢失,因此不适合存储关键业务数据。在实际应用中,可以结合其他存储方案,如Redis,以获得更全面的缓存解决方案。

    php5.4.4-php_memcache

    《PHP 5.4.4与php_memcache...综上所述,`php5.4.4-php_memcache`扩展在PHP 5.4.4环境中提供了与Memcache缓存系统交互的能力,是优化PHP应用性能的重要工具。开发者应充分利用这一扩展,提升网站的响应速度和用户体验。

    MemCache和Redis缓存介绍

    MemCache和Redis是两种广泛使用的分布式内存缓存系统,它们能够有效地存储和检索数据,减轻数据库的负担,提升应用的性能。本文将深入探讨MemCache和Redis的基本概念、特点以及应用场景。 **MemCache** 1. **基本...

    PHP7.x 8.0 memcache dll php_memcache.dll

    7. **安全性**:使用memcache时要注意数据安全性,因为缓存的数据通常是以明文形式存储的,避免存储敏感信息。 8. **监控与调试**:可以通过memcached自带的管理工具或者第三方工具监控memcached服务器的性能,如`...

    Memcache缓存

    ### Memcache缓存详解 #### 一、Memcache概述 Memcache是一种开源的、高性能的分布式内存对象缓存系统,它的主要目标是为了减轻数据库的负担,提高网站的响应速度。Memcache通过在内存中缓存数据和对象来减少对...

    php7 memcache.dll扩展,亲试可以使用

    - **缓存数据**:通过`memcache_connect()`函数连接到Memcache服务器,然后使用`memcache_set()`和`memcache_get()`等方法存储和检索数据。 - **键值对操作**:Memcache基于键值对存储数据,你可以通过键来定位并...

    php memcache php_apc php_file 缓存插件

    本文将深入探讨标题"php memcache php_apc php_file 缓存插件"所涉及的三个主要缓存机制:文件缓存、Memcache和APC(Alternative PHP Cache),以及它们在PHP中的应用。 1. 文件缓存: 文件缓存是最基础的缓存方式...

    简单的php数据文件缓存类库.zip

    数据文件缓存的做法我们常用的有php文件缓存与利用memcache来缓存数据,下面面我分别总结了memcache缓存数据与数据文件缓存有需要的朋友可参考. 1.对于一般的变量,把该变量变成php语言的格式,写到文件中,用时...

    ThinkPHP简单使用memcache缓存的方法

    下面将详细介绍如何在ThinkPHP框架中简单使用Memcache缓存的方法。 首先,了解ThinkPHP的默认缓存方式通常是File方式,这意味着缓存数据会被存储在服务器的文件系统中。如果你的服务器安装了Memcached服务,你可能...

    php5.3.5下可以使用的php_memcache.dll

    标题中的“php5.3.5下可以使用的php_memcache.dll”指的是PHP的一个扩展模块,用于在PHP 5.3.5版本环境下与Memcache缓存系统进行交互。这个dll文件是Windows平台上的动态链接库文件,是PHP与Memcache进行通信的关键...

    继上一版留言本并加入memcache缓存和pdo连接方式

    它基于上一版本的留言本系统进行了优化,引入了memcache缓存技术和PDO(PHP Data Objects)数据库连接方式,以提升性能和数据处理效率。现在让我们详细探讨这些知识点。 **Memcache缓存技术** Memcache是一种广泛...

    PHP缓存技术:memcache函数详解

    - `memcache_flush()`清空整个Memcache服务器的所有缓存数据。 6. **错误处理和调试** - `memcache_errno()`和`memcache_error()`可分别获取错误号和错误信息,帮助调试。 7. **优化和注意事项** - 分布式存储...

    php 5.4.15 64位 memcache.dll

    Memcache 是一种广泛使用的分布式内存缓存系统,用于在 Web 应用程序中提高数据读取速度,通过存储经常访问的数据到内存中,避免了频繁的数据库查询,从而提升了整体性能。 描述中的“实测可以使用”意味着这个 ...

    php数据库缓存Memcache操作类.zip

    整理了一个Memcache数据缓存操作类库文件,希望对各位会有帮助,操作类就是把一些常用的一系列的数据库或相关操作写在一个类中,这样调用时我们只要调用类文件,如果要执行相关操作就直接调用类文件中的方法函数就可以...

    php5.6 php7.0 php7.1 memcache.dll扩展

    Memcache是PHP中一个非常重要的扩展,它允许开发者在PHP应用程序中使用Memcached内存缓存系统,从而提高数据处理的速度和效率。 描述中提到,“该资源包含php5.6、php7.0及php7.1的memcache扩展”,这意味着用户...

    php之Memcache的使用

    在高并发场景下,Memcache常用于减轻数据库压力,如用户登录状态的存储、热门数据的缓存、评论计数等。通过缓存热点数据,可以显著提高网站的响应速度,提升用户体验。 总结,Memcache是PHP开发中提高网站性能的...

Global site tag (gtag.js) - Google Analytics