APC 和 eAccelerator 都是不錯的PHP加速緩存,但是為什么在這里要推薦使用 APC 而不是 eAccelerator 呢?
1,根據(jù)我們對幾個大站點的測試,雖然 eAccelerator 在低負(fù)載下,性能要比 APC 好點,但是在大流量長期運(yùn)行的情況下,APC 要比 eAccelerator 要更為穩(wěn)定。我們推薦出現(xiàn)了 PHP 突然假死,無故出現(xiàn) 502 報錯的站點,改用 APC 。
2,Discuz! X2 開始支持用 APC 作為論壇緩存,經(jīng)過大量站點的使用情況來看,APC的穩(wěn)定性很好,不會出現(xiàn)一些靈異情況。
3,APC 的發(fā)展迅速,自從 FACEBOOK 加入對 APC 的更新后,得到了很大發(fā)展,而 eAccelerator 新版本穩(wěn)定性不佳,功能和代碼都被刪除了不少。
4,APC 對 PHP5.3 版本支持良好。
APC的安裝很簡單
1,下載APC
wget http://pecl.php.net/get/APC-3.1.9.tgz
復(fù)制代碼 2,解壓和編譯
tar zxvf APC-3.1.9.tgz
cd APC-3.1.9
/usr/local/php5/bin/phpize
./configure --enable-apc --enable-mmap --enable-apc-spinlocks --disable-apc-pthreadmutex --with-php-config=/usr/local/php5/bin/php-config
make
make install
make clean
復(fù)制代碼 3,編輯php.ini
找到 extension_dir ,把值改為/usr/local/php5/lib/php/extensions/no-debug-non-zts-20060613/
然后在下面加入
extension=apc.so
apc.enabled = 1
apc.shm_size = 64M
apc.stat = 1
復(fù)制代碼其中apc.shm_size設(shè)置的是內(nèi)存大小,一般用64M即可,小內(nèi)存的可以改為32M。
apc.stat設(shè)置成0的話,性能會更好一點,但是設(shè)置成0后,修改了PHP文件后必須得重啟下PHP才能馬上更新內(nèi)容。對于平時修改比較多的站點來說,還是設(shè)置成1比較好。
4,重啟PHP即可生效。