手动清除memcached缓存
软件版本
memcached-1.4.5
memcache-3.0.5
php-5.2.11
1.查memcache状态
/usr/bin/perl /usr/local/src/memcached-1.4.5/scripts/memcached-tool localhost:11211
或者
telnet localhost 11211
2.手动清除memcached测试
1). flush_all
echo "flush_all" | nc localhost 11211
# telnet localhost 11211
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
get var_key
VALUE var_key 0 13
test variable
END
flush_all
OK
get var_key
END
quit
Connection closed by foreign host.
2). 重启memcached进程
kill $(ps aux|grep memcached|grep -v grep |awk '{print $2}')
/usr/local/memcached/bin/memcached -d -m 256 -p 11211 -u nobody
3)Memcache::flush() immediately invalidates all existing items.
/* procedural API */
$memcache_obj = memcache_connect('memcache_host', 11211);
memcache_flush($memcache_obj);
/* OO API */
$memcache_obj = new Memcache;
$memcache_obj->connect('memcache_host', 11211);
$memcache_obj->flush();
?>
这个测试的表现是请求Memcache::flush()以后仍可以get $key取到值,而且通过memcached-tool 查到该item的max_age并无变化.
参考链接
MicrosoftInternetExplorer402DocumentNotSpecified7.8Normal0
理解 Memcache 的服务器端与客户端
http://www.studyday.net/2011/07/261
相关推荐
标题“手动清除memcached缓存方法”涉及到的是在IT领域中如何清理运行中的memcached服务中的缓存数据。memcached是一种高性能的分布式内存对象缓存系统,常用于加速动态Web应用,通过存储数据到内存中来减少对数据库...
5. **安装PHP扩展**:对于PHP,你需要安装PHP的Memcache扩展,同样通过包管理器或手动编译。 ``` sudo apt-get install php-memcache 或者 pecl install memcache ``` 6. **配置PHP**:在php.ini文件中添加或...
3. **内存管理策略**:memcached采用LRU(Least Recently Used)最近最少使用算法来决定何时清除内存中的数据,当内存空间不足时,最不常使用的数据将首先被移除。 4. **数据持久化**:memcached本身并不支持数据...
// 清除所有数据 $mem->flush(); $val = $mem->get('key'); echo "Get key value: "; print_r($val); echo " "; // 关闭连接 $mem->close(); ``` 这段代码首先建立与Memcache服务器的连接,然后执行一系列操作...
在这个动作中,我们利用Yii框架提供的缓存组件`Yii::app()->cache`,调用其`flush`方法来清除所有缓存数据。此方法会清除与当前应用相关的缓存,不会影响其他应用的缓存。 除了上述的前台触发方法,还可以直接在...
同时,清除已有的模板后再进行统计操作,这通常能解决问题。 3. 数据统计差异: 当总部进行数据分析后发现数据有差异,可能需要进行数据维护操作。这可能涉及到数据库中某些数据的更新或校准。 4. 启用远程时仓库...
- 编程式事务管理通过编程的方式手动控制事务的开启、提交和回滚。 - **Hibernate与MyBatis的比较**: - Hibernate是一个全功能的ORM框架,支持懒加载、缓存、事务管理等特性。 - MyBatis是一个半自动的ORM框架...
在ThinkPHP中,通常不需要手动启动Session,因为框架会在需要时自动处理。 2. **pause**: 暂停Session。在ThinkPHP中,没有提供直接暂停Session的方法,但你可以通过`session_write_close()`函数来实现。 3. **...
6. 缓存清除:clearCache()方法提供了清除指定缓存文件或清除全部缓存文件的功能。通过调用这个方法可以手动删除过时的缓存文件,或者在更新了页面内容后清空缓存。 7. 构造函数:cache()是类的构造函数,它接受一...
- **编程实现缓存**:需要开发者手动实现的业务数据缓存。 ### 影响缓存命中率的因素 #### 主要因素 - **业务需求的时效性**:体现在缓存的有效期设置上。 - **硬件基础结构**:决定了缓存的容量,有时即使数据...
Go社区提供了很多优秀的第三方库来处理缓存,比如`github.com/patrickmn/go-cache`,这是一个轻量级的内存缓存库,支持定时过期和手动清除等功能。使用它来获取缓存非常简单,只需要初始化一个缓存实例,然后通过...
添加缓存的过程大致如下:通过求余操作确定key在slots数组中的位置,遍历对应的slot链表,如果发现匹配的slot或slot过期,则清除它,最后在链表末尾插入新的slot。 在安装APC模块方面,针对Windows和Linux平台有...
- 使用`unset`函数可以手动移除session中的单个数据项,而`session_destroy`函数则可以清除所有的session数据。 5. Session的存储方式: - 默认情况下,session数据保存在磁盘上的文件中。 - 由于频繁读写磁盘...