久久久久在线观看_又色又爽又黄的免费视频播放_一区中文字幕_日韩电影在线播放

今日焦點 焦點資訊 營銷之道 企業(yè)報道 淘寶運營 網(wǎng)站建設(shè) 軟件開發(fā) 400電話
  當(dāng)前位置: 首頁 » 資訊 » APP開發(fā) » 正文

PHP開發(fā)中的緩存技術(shù)匯總

放大字體  縮小字體 發(fā)布日期:2017-04-24  瀏覽次數(shù):305  【去百度看看】
核心提示:PHP開發(fā)中的緩存技術(shù)匯總
 PHP開發(fā)中,出于對網(wǎng)站服務(wù)器負(fù)載的考慮,往往需要對頁面、數(shù)據(jù)等內(nèi)容進(jìn)行緩存處理,下面就來看看,在PHP開發(fā)中有哪些緩存方式吧。

1、頁面部分緩存
該種方式,是將一個頁面中不經(jīng)常變的部分進(jìn)行靜態(tài)緩存,而經(jīng)常變化的塊不緩存,最后組裝在一起顯示;可以使用類似于ob_get_contents的方式實現(xiàn),也可以利用類似ESI之類的頁面片段緩存策略,使其用來做動態(tài)頁面中相對靜態(tài)的片段部分的緩存(ESI技術(shù),請baidu,此處不詳講)。該種方式可以用于如商城中的商品頁;

2、數(shù)據(jù)緩存
顧名思義,就是緩存數(shù)據(jù)的一種方式;比如,商城中的某個商品信息,當(dāng)用商品id去請求時,就會得出包括店鋪信息、商品信息等數(shù)據(jù),此時就可以將這些數(shù)據(jù)緩存到一個php文件中,文件名包含商品id來建一個唯一標(biāo)示;下一次有人想查看這個商品時,首先就直接調(diào)這個文件里面的信息,而不用再去數(shù)據(jù)庫查詢;其實緩存文件中緩存的就是一個php數(shù)組之類;Ecmall商城系統(tǒng)里面就用了這種方式;

3、全頁面靜態(tài)化緩存
也就是將頁面全部生成html靜態(tài)頁面,用戶訪問時直接訪問的靜態(tài)頁面,而不會去走php服務(wù)器解析的流程。此種方式,在CMS系統(tǒng)中比較常見,比如dedecms;一種比較常用的實現(xiàn)方式是用輸出緩存:
Ob_start()
******要運行的代碼*******
$content = Ob_get_contents();
****將緩存內(nèi)容寫入html文件*****
Ob_end_clean();

4、查詢緩存
其實這跟數(shù)據(jù)緩存是一個思路,就是根據(jù)查詢語句來緩存;將查詢得到的數(shù)據(jù)緩存在一個文件中,下次遇到相同的查詢時,就直接先從這個文件里面調(diào)數(shù)據(jù),不會再去查數(shù)據(jù)庫;但此處的緩存文件名可能就需要以查詢語句為基點來建立唯一標(biāo)示;按時間變更進(jìn)行緩存。
其實,這一條不是真正的緩存方式;上面的2、3、4的緩存技術(shù)一般都用到了時間變更判斷;就是對于緩存文件您需要設(shè)一個有效時間,在這個有效時間內(nèi),相同的訪問才會先取緩存文件的內(nèi)容,但是超過設(shè)定的緩存時間,就需要重新從數(shù)據(jù)庫中獲取數(shù)據(jù),并生產(chǎn)最新的緩存文件;

5、按內(nèi)容變更進(jìn)行緩存
這個也并非獨立的緩存技術(shù),需結(jié)合著用;就是當(dāng)數(shù)據(jù)庫內(nèi)容被修改時,即刻更新緩存文件;
比如,一個人流量很大的商城,商品很多,商品表必然比較大,這表的壓力也比較重;就可以對商品顯示頁進(jìn)行頁面緩存;當(dāng)商家在后臺修改這個商品的信息時,點擊保存,我們同時就更新緩存文件;那么,買家訪問這個商品信息時,實際上訪問的是一個靜態(tài)頁面,而不需要再去訪問數(shù)據(jù)庫;試想,如果對商品頁不緩存,那么每次訪問一個商品就要去數(shù)據(jù)庫查一次,如果有10萬人在線瀏覽商品,那服務(wù)器壓力就大了;

6、apache緩存模塊
apache安裝完以后,是不允許被cache的。如果外接了cache或squid服務(wù)器要求進(jìn)行web加速的話,就需要在htttpd.conf里進(jìn)行設(shè)置,當(dāng)然前提是在安裝apache的時候要激活mod_cache的模塊。
安裝apache時:./configure --enable-cache --enable-disk-cache --enable-mem-cache

7、php APC緩存擴(kuò)展
Php有一個APC緩存擴(kuò)展,windows下面為php_apc.dll,需要先加載這個模塊,然后是在php.ini里面進(jìn)行配置:
[apc] 
extension=php_apc.dll 
apc.rfc1867 = on 
upload_max_filesize = 100M 
post_max_size = 100M 
apc.max_file_size = 200M 
upload_max_filesize = 1000M 
post_max_size = 1000M 
max_execution_time = 600 ; 每個PHP頁面運行的最大時間值(秒),默認(rèn)30秒 
max_input_time = 600 ; 每個PHP頁面接收數(shù)據(jù)所需的最大時間,默認(rèn)60 
memory_limit = 128M ; 每個PHP頁面所吃掉的最大內(nèi)存,默認(rèn)8M
比較知名的是XCache、Turck MM Cache、PHP Accelerator等

8、內(nèi)存式緩存
提到這個,可能大家想到的首先就是Memcached;memcached是高性能的分布式內(nèi)存緩存服務(wù)器。 一般的使用目的是,通過緩存數(shù)據(jù)庫查詢結(jié)果,減少數(shù)據(jù)庫訪問次數(shù),以提高動態(tài)Web應(yīng)用的速度、 提高可擴(kuò)展性。它就是將需要緩存的信息,緩存到系統(tǒng)內(nèi)存中,需要獲取信息時,直接到內(nèi)存中取;比較常用的方式就是 key-->value方式;
<?php 
$memcachehost = '192.168.6.191';
$memcacheport = 11211;
$memcachelife = 60;
$memcache = new Memcache;
$memcache->connect($memcachehost,$memcacheport) or die ("Could not connect");
$memcache->set('key','緩存的內(nèi)容');
$get = $memcache->get($key); //獲取信息
?>

 
長春  短信群發(fā)  吉林省  紅視窗  中國  長春市  玉米  長春網(wǎng)站建設(shè)  網(wǎng)站  振華  設(shè)備  設(shè)計  吉林  廣州  撲克  長春上門維修電腦  敘利亞  內(nèi)蒙古  聯(lián)合聲明  消費者權(quán)益  突擊步槍  新聞中心  滿洲里  化學(xué)武器  中非合作論壇  中國政府  美國白宮  記者會  塞內(nèi)加爾  中消協(xié)  強(qiáng)臺風(fēng)  中國電影  消費者  海外網(wǎng)  長春北大青鳥  中國智能建筑節(jié)  重慶市  敘政府  網(wǎng)站建設(shè)  北京市  國家元首  長春上門修電腦  產(chǎn)業(yè)園  北斗導(dǎo)航  中國芯  龍頭企業(yè)  黨委書記  長春上門做系統(tǒng)  長春電腦上門維修  塞申斯  侯建國,質(zhì)量,中國特色社會主義  售前咨詢技巧  俄羅斯  發(fā)言人  特朗普,貿(mào)易戰(zhàn),美國  運載火箭  中國軍網(wǎng)  今日頭條  美國人  特朗普  長春國貿(mào)  位置服務(wù)  英國皇家海軍  一帶一路  檢察官  中國移動  人民政府  中國市場  發(fā)布會  美國海軍陸戰(zhàn)隊  小學(xué)生  圓桌  指示  撫養(yǎng)費  觀察者網(wǎng)  小雨  白宮  彈道導(dǎo)彈  郭曉東  美國  臺風(fēng)  亞馬遜  參議院  尼克松  日本  國家安全  化武  步槍  大阪  毒品  動物世界  廣東省  劉強(qiáng)東  美國陸軍  非洲  中國空軍  劉雨欣  美國總統(tǒng)  中非  結(jié)婚紀(jì)念日 
 
[ 資訊搜索 ]  [ 加入收藏 ]  [ 告訴好友 ]  [ 打印本文 ]  [ 違規(guī)舉報 ]  [ 關(guān)閉窗口 ]

 
0條 [查看全部]  相關(guān)評論

 
網(wǎng)站首頁 | 關(guān)于我們 | 聯(lián)系方式 | 使用協(xié)議 | 版權(quán)隱私 | 網(wǎng)站地圖 | 排名推廣 | 廣告服務(wù) | 積分換禮 | 網(wǎng)站留言 | RSS訂閱 | 皖I(lǐng)CP備2021004516號-14
企業(yè)800網(wǎng) · 提供技術(shù)支持