溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Xcache為PHP提速

發(fā)布時間:2020-07-02 03:18:54 來源:網(wǎng)絡 閱讀:1700 作者:skypeGNU1 欄目:web開發(fā)

    XCache 是一個又快又穩(wěn)定的 PHP opcode 緩存器. 經(jīng)過良好的測試并在大流量/高負載的生產(chǎn)機器上穩(wěn)定運行. 經(jīng)過(在 linux 上)測試并支持所有現(xiàn)行 PHP 分支的最新發(fā)布版本, 如 PHP_5_1 PHP_5_2 PHP_5_3 PHP_5_4. 并完美支持線程安全/Windows. 與同類 opcode 緩存器相比更勝一籌, 比如能夠快速跟進 PHP 版本. 

    更多詳細信息,請訪問Xcache官方網(wǎng)站:http://xcache.lighttpd.net/

安裝步驟:

1、解壓tar.gz包

[root@localhost ~]# tar xf xcache-3.0.4.tar.gz  -C /usr/local/src
[root@localhost ~]# cd /usr/local/src
[root@localhost src]# cd xcache-3.0.4/

### 查看安裝步驟
[root@localhost xcache-3.0.4]# vim INSTALL

Installtion:

    $ phpize --clean && phpize
    $ ./configure --help
    $ CFLAGS='your cflags' ./configure --enable-xcache --enable...
    $ make
    $ su
    # make install
        (update php.ini, restart php)
        
 
### 用本地的解釋器探測模塊所依賴的版本號/擴展API,生成序列號標記,而后才能產(chǎn)生configure文件,才能編譯
[root@localhost xcache-3.0.4]# /usr/local/php/bin/phpize 

[root@localhost xcache-3.0.4]# ./configure --enable-xcache --enable-xcache-coverager --enable-xcache-optimizer --with-php-config=/usr/local/php/bin/php-config

# 注意:
--enable-xcache            # 啟用xcache
--enable-xcache-vocerager  # 附加特性
--enable-xcache-optimizer  # 啟用操作碼優(yōu)化

[root@localhost xcache-3.0.4]# make && make install
## 安裝完成后,會提示xcache.so模塊的路徑, 我們把xcache.so移動到/usr/local/php/include/php/ext目錄下,方便管理
Installing shared extensions:    /usr/local/php/lib/php/extensions/no-debug-zts-20100525/

[root@localhost xcache-3.0.4]# mv /usr/local/php/lib/php/extensions/no-debug-zts-20100525/xcache.so  /usr/local/php/include/php/ext/

## 生成Xcache管理員的密碼(MD5密文)
[root@localhost ~]# echo -n '123456' | md5sum
e10adc3949ba59abbe56e057f20f883e

2、整合php和xcache

[root@localhost xcache-3.0.4]# cp xcache.ini /etc/php.d/
### 編輯xcache.ini

##通常僅編輯
extension = 
xcache.admin.enable_auth =
xcache.admin.user = 
xcache.admin.pass =

#####################################
[xcache-common]
extension = "/usr/local/php/include/php/ext/xcache.so"
;xcache.so路徑
[xcache.admin]
xcache.admin.enable_auth = On
;開啟驗證
xcache.admin.user = "xcache"
;驗證名
xcache.admin.pass = "e10adc3949ba59abbe56e057f20f883e"
;md5后的驗證密碼, 亦即echo -n "123456" | md5sum,留空則禁用管理頁面.
[xcache]
xcache.shm_scheme ="mmap"
; 決定 XCache 如何從系統(tǒng)分配共享內(nèi)存
xcache.size=60M
; 0 禁止, 非 0 則啟用緩存器. 請注意您系統(tǒng)所允許的 mmap 最大值.
xcache.count =1
; 指定將 cache 切分成多少塊.(cat/proc/cpuinfo |grep -c processor)
xcache.slots =8K
; 只是作為 hash 槽個數(shù)的參考值, 您可以放心地緩沖超過這個個數(shù)的項目.
xcache.ttl=0
; 設置緩沖項目的 Ttl (Time To Live) 值, 0=永不過期.
xcache.gc_interval =0
; 檢查過期項目, 回收內(nèi)存空間的間隔.
xcache.var_size=4M
xcache.var_count =1
xcache.var_slots =8K
; 同上, 不過用于數(shù)據(jù)緩沖而不是 opcode 緩沖.
xcache.var_ttl=0
; xcache_(get|set|inc|dec) 等的默認 ttl 值.
xcache.var_maxttl=0
; 最大 ttl 值, 程序無法指定超過這個最大值的 ttl.
xcache.var_gc_interval =300
xcache.test =Off
xcache.readonly_protection = On
;如果啟用了 ReadonlyProtection, 將會略微降低性能, 但是會提高一定的安全系數(shù). 這個選項對于xcache.mmap_path = /dev/zero 無效.
xcache.mmap_path ="/tmp/xcache"
;緩存文件,不是目錄,需要手動創(chuàng)建
xcache.coredump_directory =""
xcache.cacher =On
;使用/不使用 opcode 緩存器. xcache.size = 0 時無效.
xcache.stat=On
;使用 stat() 發(fā)現(xiàn)檢查腳本更新.
xcache.optimizer =Off
[xcache.coverager]
xcache.coverager =On
;啟用代碼覆蓋信息采集到. 啟用后xcache.coveragedump_directory 設置以及xcache_coverager_start/stop/get/clean() 才可以使用. (啟用后會對降低影響)
xcache.coverager_autostart = On
;每個頁面請求自動調(diào)用 xcache_coverager_start
xcache.coveragedump_directory =""



3、生成xcache緩存文件

[root@localhost ~]# touch /tmp/xcache
[root@localhost ~]# chmod 777 /tmp/xcache


4、使用admin管理

 其實要想作為一個站點,可以有5種方式進行訪問 : 

(物理目錄、虛擬目錄、基于IP、基于端口、基于主機)

# 拷貝Xcache管理程序到網(wǎng)站根目錄下
[root@localhost xcache-3.0.4]# cp -a htdocs /usr/local/apache/htdocs/xadmin

# 重啟 httpd, 如果fastCGI方式,還需要重啟php-fpm服務
[root@localhost ~]# service httpd restart
[root@localhost ~]# service php-fpm restart
報錯:
Starting php-fpm: [21-Jul-2014 18:55:21] NOTICE: PHP message: PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/php/include/php/ext/xcache.so' - /usr/local/php/include/php/ext/xcache.so: undefined symbol: core_globals_id in Unknown on line 0

#########################  ?????????
# 這里我不知道出現(xiàn)了什么情況, 不知道是不是版本的問題
# httpd-2.2.27 , php-5.4.30 , xcache-3.0.4 , fastCGI 方式
# 
# 希望大家解答一下
#########################

# 后來,我還是使用module的方式, 就一切OK。。
[root@localhost ~]# vi /etc/httpd/httpd.conf
LoadModule php5_module        modules/libphp5.so
#LoadModule fastcgi_module        modules/mod_fastcgi.so

[root@localhost httpd]# service httpd restart


然后訪問http://localhost/xadmin,用戶名為xcache,密碼為123456;

Xcache為PHP提速


另外,還可以通過phpinfo來驗證PHP是否支持Xcache

Xcache為PHP提速


參考:

http://51log.blog.51cto.com/6076767/1291006

http://wushuaishuai.cn/xcache-buffer-introduction-use-and-configure.html


向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI