国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

PHP清除Memcache過期緩存程序代碼

2024-05-04 21:58:11
字體:
來源:轉載
供稿:網友

本文章給大家分享一個PHP清除Memcache過期緩存程序代碼,Memcached會采用LRU算法刪除緩存內容或使用時刪除過期內容,而有時Memcached這樣的釋放內存的機制并不能滿足所有應用,故我們在PHP基礎上實現了統一刪除過期內容的功能,適用于定時清理.

PHP實例代碼如下:

  1. /** 
  2. * Memcached的過期內存回收 
  3. */ 
  4. class mem_dtor extends Memcache 
  5. private $server_id
  6. public function __construct($host,$port
  7. $this->server_id = "$host:$port"
  8. $this->connect($host,$port); 
  9.  
  10. // 回收所有過期的內存 
  11. public function gc() 
  12. $t = time(); 
  13. $_this = $this
  14. $func = function($key,$infouse ($t,$_this
  15. if($info[1] - $t delete($key); 
  16. }; 
  17. $this->lists($func); 
  18.  
  19. // 查看所有緩存內容的信息 
  20. public function info() 
  21. $t = time(); 
  22. $func = function($key,$infouse ($t
  23. echo $key,' => Exp:',$info[1] - $t,"n"//查看緩存對象的剩余過期時間 
  24. }; 
  25. $this->lists($func); 
  26.  
  27. private function lists($func
  28. $sid = $this->server_id; 
  29. $items = $this->getExtendedStats('items'); //獲取memcached狀態 
  30. foreach($items[$sid]['items'as $slab_id => $slab//獲取指定server id 的 所有Slab 
  31. $item = $this->getExtendedStats('cachedump',$slab_id,0); //遍歷所有Slab 
  32. foreach($item[$sidas $key => $info//獲取Slab中緩存對象信息 
  33. $func($key,$info); 
  34. $mem = new mem_dtor('127.0.0.1',11211); 
  35. $mem->info();//查看狀態 
  36. $mem->gc(); //回收 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 辽源市| 玛纳斯县| 绥中县| 漾濞| 太仆寺旗| 灵宝市| 久治县| 许昌市| 赤壁市| 牟定县| 宿迁市| 金湖县| 花莲市| 威宁| 大同市| 抚顺市| 积石山| 广丰县| 内丘县| 嘉义县| 新乐市| 南靖县| 曲靖市| 文安县| 张家口市| 韩城市| 蓬溪县| 昌邑市| 松溪县| 手游| 彰化县| 威远县| 平定县| 蕲春县| 玉树县| 玉龙| 永胜县| 仲巴县| 佳木斯市| 吐鲁番市| 忻州市|