一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

PHP企業級應用之常見緩存技術篇

  普遍緩存技術

  數據緩存:這里所說的數據緩存是指數據庫查詢緩存,每次訪問頁面的時候,都會先檢測相應的緩存數據是否存在,如果不存在,就連接數據庫,得到數據, 并把查詢結果序列化后保存到文件中,以后同樣的查詢結果就直接從緩存表或文件中獲得。

用的最廣的例子看Discuz的搜索功能,把結果ID緩存到一個表中,下次搜索相同關鍵字時先搜索緩存表。

  舉個常用的方法,多表關聯的時候,把附表中的內容生成數組保存到主表的一個字段中,需要的時候數組分解一下,這樣的好處是只讀一個表,壞處就是兩個 數據同步會多不少步驟,數據庫永遠是瓶頸,用硬盤換速度,是這個的關鍵點。

  頁面緩存:

  每次訪問頁面的時候,都會先檢測相應的緩存頁面文件是否存在,如果不存在,就連接數據庫,得到數據,顯示頁面并同時生成緩存頁面文件,這樣下次訪問 的時候頁面文件就發揮作用了。(模板引擎和網上常見的一些緩存類通常有此功能)

  時間觸發緩存:

  檢查文件是否存在并且時間戳小于設置的過期時間,如果文件修改的時間戳比當前時間戳減去過期時間戳大,那么就用緩存,否則更新緩存。

  內容觸發緩存:

  當插入數據或更新數據時,強制更新緩存。

  靜態緩存:

  這里所說的靜態緩存是指靜態化,直接生成HTML或xml等文本文件,有更新的時候重生成一次,適合于不太變化的頁面,這就不說了。

  以上內容是代碼級的解決方案,我直接CP別的框架,也懶得改,內容都差不多,很容易就做到,而且會幾種方式一起用,但下面的內容是服務器端的緩存方 案,非代碼級的,要有多方的合作才能做到

  內存緩存:

  Memcached是高性能的,分布式的內存對象緩存系統,用于在動態應用中減少數據庫負載,提升訪問速度。

  這里說下Memcached的例子:

   1. <?php  
2. $memcache = new Memcache;
3. $memcache->connect(‘localhost’, 11211) or die (“Could not connect”);
4. $version = $memcache->getVersion();
5. echo “Server’s version:.$version.”/n”;
6. $tmp_object = new stdClass;
7. $tmp_object->str_attr = ‘test’;
8. $tmp_object->int_attr = 123;
9. $memcache->set(‘key, $tmp_object, false, 10) or die (“Failed to save data at the server”);
10. echo “Store data in the cache (data will expire in 10 seconds)/n”;
11. $get_result = $memcache->get(‘key’);
12. echo “Data from the cache:/n”;
13. var_dump($get_result);
14. ?>

it知識庫PHP企業級應用之常見緩存技術篇,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 天天操天天干天天插 | 91精品视频免费在线观看 | 综合婷婷 | 国产成人精品视频免费 | 国产第一页精品 | 91精品视频网站 | 成人影视大全 | 国产成人精品一区二区 | 日韩天天摸天天澡天天爽视频 | 中文字幕一区视频 | 日本精品1在线区 | 欧美一级特黄做 | 一区二区三区伦理高清 | 激情综合在线观看 | 天天干夜夜怕 | 国产永久在线视频 | 玖玖在线精品 | 国产偷国产偷亚洲高清人乐享 | 在线观看视频一区二区三区 | 极品吹潮视频大喷潮tv | 天天干在线影院 | 久久精品久久久久久久久人 | 欧美人最猛性xxxxx | 91久久精品一区二区三区 | 国产片在线 | 中文字幕亚洲一区二区v@在线 | 久久99国产精品二区不卡 | 亚洲三级成人 | 日本不卡一区二区三区四区 | 天天色成人网 | 五月婷婷六月丁香在线 | 综合色区 | 伊人天天干 | 亚洲成a人在线观看 | 国产原创中文字幕 | 成人观看的视频三级 | 青草久操 | 亚洲国产韩国一区二区 | 免费国产一区二区三区 | 草草视频手机在线观看视频 | 一区二区视频在线免费观看 |