php cpu缓存 执行 代码,缓存PHP页面的代码,可以减轻CPU和MYSQL负担
/*
* 名稱: 極光緩存
*
* 作者: DCD
* mail: haodan-_-b@163.com
*
* web開發群: 3574636
* http://www.525ok.com
*
* 完成日期: 2006-2-27
*
* 版本:V1.00
*
* 說明:
*
*??????? 緩存網頁內容,減輕服務器CPU負荷,使用簡便、靈活。
*??????? 本程序主要對MYSQL的select操作進行優化,還有部分小偷類程序。
*??????? 比如在百度搜索一個不常見的關鍵字,第一次搜索速度非常慢,“找到相關網頁181篇,用時0.426秒”
*??????? 那么再搜索一次,就會變成“找到相關網頁181篇,用時0.001秒”。
*??????? 本程序就是使用了類似的方法緩存數據到服務器硬盤,減輕CPU和數據庫負荷。
*??????? 請根據您頁面日訪問量來設定緩存時間。
*??????? 使用前,一定先創建好緩存目錄。
*
* 注意:
*
*??????? 不是所有頁面都需要使用本程序。
*??????? 緩存文件會占用一定硬盤空間。
*??????? 例如需要對數據庫進行inster、delete、update操作的頁面不要使用,select可以。
*??????? mail()、fwrite()等函數,將不產生任何作用。
*??????? 請不要將緩存時間設置得太小(小于5秒),那樣不會減輕負荷
*??????? 如果你的頁面訪問量不太高,也不要使用本代碼。
*
* 使用方法:
*
*??????? include('arrcache.php');//必須在文件最開始處包含本頁
*??????? $cache = new ArrCache('cache');//設置緩存文件夾
*??????? ……
*??????? ……
*??????? ……//代碼
*??????? $cache->endCache();//在文件最后寫入
*
* 說明:
*
*????? class ArrCache(string path,[int time],[string type]);
*??????? path:?????? cache文件保存目錄,從根目錄算起,首尾不需要“/”
*??????? time:?????????????? 緩存時間,默認120秒
*??????? type:?????????????? 緩存文件后綴,默認“txt”
*
*????? void endCache();
*??????? 在頁面最后寫上,否則這行后邊的數據不會被緩存。
*
*/
ob_start();
class ArrCache
{
//構造函數
function ArrCache($path,$time = 120,$type = 'txt')
{
$this->path????? = $path;
$this->time????? = $time;
$this->fileType = $type;
$this->fileName = $_SERVER['DOCUMENT_ROOT'].'\\'.$this->path.'\\'.md5($_SERVER['URL'].'?'.$_SERVER['QUERY_STRING']).'.'.$this->fileType;
if (file_exists($this->fileName) && ((filemtime($this->fileName)+$this->time) > time()))
{
$fp = fopen($this->fileName,"r");
echo fread($fp,filesize($this->fileName));
fclose($fp);
ob_end_flush();
exit;
}
}
//在文件最后加入這行,輸出所有緩存內容,并且寫入緩存文件。
function endCache()
{
$fp?????? = fopen($this->fileName,"w");
fwrite($fp,ob_get_contents());
fclose($fp);
ob_end_flush();
}
}//end class
?>
總結
以上是生活随笔為你收集整理的php cpu缓存 执行 代码,缓存PHP页面的代码,可以减轻CPU和MYSQL负担的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java写的网络版斗地主_JAVA网络版
- 下一篇: 【MySQL建表语句转PostgreSQ