[ 永遠的UNIX::UNIX技術資料的寶庫 ]   GB | BIG5

首頁 > 網絡管理 > 互聯網技術 > 正文
ZendCache使你的站點飛起來
http://www.linuxforum.net 薛啟康(xqk@163.net) (2001-04-20 18:23:54)
商業應用的網站,其傳輸效率是十分重要的,通常在一些電子商務的站點上,服務器的反應速度決定了其服務質量,服務器的負載決定了它的最大可提供客戶的訪問容量。技術人員總是想方設法地盡可能地提高服務器的響應速度。而ZendCache也正是為了提高服務器的響應速度而開發的一個優秀產品。有數據証明,使用ZendCache可以將服務器的響應速度提高到原來的300%以上。

 

一、ZendCache是什

       先看一下php是如何運行的,一個請求php腳本發到服務器,服務器從磁盤上查找相應的文件,先編譯腳本,然執行之,最將結果送出。所花時間由查找文件+打開文件+讀文件+編譯文件幾部分組成。ZendCache是一個php腳本高速Cache,它可以將剛執行的php腳本文件的編譯結果存放在Web服務器的內存中,如果下一次有人再請求此頁,它就可以很快將其送出。免去了每次用戶請求php文件,服務器都編譯一次腳本所花的時間。同時,免取了從磁盤上查找、讀取php文件所花的時間。所以可以大大提高服務器的相應速度。

目前ZendCache只能運行在Linux (glibc 2.1)、Solaris 2.6以上、FreeBSD 3.4及4.0。很可惜,目前它沿不支持Windows系統。

二、安裝及使用ZendCache

在zend.com上注冊一個用戶,以此用戶登錄zend.com,然到以下地址下載http://www.zend.com/store/products/zend-cache.php。由zendCache是一個要會費的軟件,我們這裡只能下載一個可供使用30天的一個限制日期的試用版,不過,它是一個全功能的軟件包。試試看,你可以體驗到它強大的功能。要下載其試用版,直接選擇“Test drive available”下載。

整個下載要分三步,第一步,下載ZendCache軟件包,直接從“Supported Platforms”中選擇相應平台的軟件包即可。注意軟件適用的平台及相應php的版本、類庫的類型。

第二步是 “Request Product License”,即從zend.com取得授權,要求用戶提供自己機器的Host ID,也即計算機上網卡的MAC地址,zend.com提供了一個讀取主機網卡地址的工具,用戶可以從zend.com是下載一個叫lmutil.Z的小程序,解壓縮,執行它,即可獲得計算機的網卡地址。執行方法:

# ./lmutil lmhostid

即可獲得主機ID。另外,用戶也可以從/var/log/messages中找到網卡的MAC地址。

此將此ID號填入申請license的form中,選擇“request”,然耐心等待,Zend.com會在48小時內給你發郵件,通知你可以去下載自己的license了。收到郵件,直接進入http://www.zend.com/store/pickup.php去下載。License是一個名為zend_cache.dat的文件.

安裝(本文以linux環境下的安裝為例)

解壓縮ZendCache-1[1].0.0-PHP_4.0.4-Linux_glibc2.1-i386.tar.gz文件

# tar zxvf ZendCache-1[1].0.0-PHP_4.0.4-Linux_glibc2.1-i386.tar.gz

# cd ZendCache-1[1].0.0-PHP_4.0.4-Linux_glibc2.1-i386

# cp *.so /usr/local/Zend/lib

然,將zend_cache.dat復制到/usr/local/Zend目錄下。

 

接著編輯php.ini文件,加入以下幾行:

; Start of sample Zend Cache configuration section

zend_cache.use_cwd=1

zend_cache.memory_consumption=64 ; 64MB

zend_cache.validate_timestamps=1

zend_extension=/usr/local/lib/ZendCache.so

; End of sample Zend Cache configuration section

重新啟動apache 服務器。使剛才的改動生效。

在Web服務器的htdocs目錄下編輯一個簡單的php文件test.php,內容如下:

<?

Phpinfo();

?>

然,在瀏覽器上鍵入http://localhost/test.php

如果屏幕上的第二部分出現了

This program makes use of the Zend scripting language engine:
Zend Engine v1.x.x, Copyright (c) 1998-2000 Zend Technologies
    with Zend Cache v1.x.x, Copyright (c) 1999-2000, by Zend Technologies

字樣,表示ZendCache已經正常工作了。剩下的是看看它的Cache命中效果了。

三、測試ZendCache的命中率

隨同ZendCache軟件包解開的還有一部分php代碼,這可以將ZendCache的命中效果直觀地顯示出來。簡單地將cache_gui這個子目錄復制到Web服務器的htdocs目錄下。在瀏覽器url欄中鍵入http://localhost/cach_gui/index.html即可看到Cache的命中效果。如下圖所示,為筆者安裝zendCache的命中效果圖:

 


如果瀏覽器中的圖形無顯示,且提示你編譯的PHP中的GD模塊不支持png圖形的顯示,那你還得再次編譯php,使GD模塊支持png圖形顯示。有關如何編譯PHP,使它支持png的文章可以在網上查找,本文不作記述。如果你不知道自己PHP是否支持png,可以使用phpinfo()函數查看。一般情況下,如果在編譯時沒有特別指出要支持png,編譯時GD就不會默認支持png。

 

注意:如果你同時使用了ZendOptimizer,那,應該將以上幾行放置在ZendOptimizer之,否則你的Apache server起不來。
(http://www.fanqiang.com)
    進入【UNIX論壇

相關文章

======
 

★  樊強制作 歡迎分享  ★