千萬併發壓測環境php5.4.34+opcache環境整合

公司在做高併發壓測,fastcgi,apc,ocache,opcache,

幾經考慮,最終考慮用opcache,因爲作爲 zend-opcache合併爲php5.5的分支版本,xcache的前途堪慮,

 

在環境的安裝上竟然折騰了半個下午沒有搞定,這個作下問題記錄。

 

先說安裝,

http://php.net/manual/zh/opcache.installation.php

官網的說明,因爲 5.2 5,3 5,4也可以用pecl來安裝,試了下倒是安裝成功了但啓動後也沒有報錯,info信息中一起沒有,安裝過程如下 :

sudo yum install  php54w-pecl-zendopcache

sudo pecl install zendopcache-7.0.3

 

;extension=opcache.so

extension=/usr/lib64/php/modules/opcache.so

;

opcache.memory_consumption=128

opcache.interned_strings_buffer=8

opcache.max_accelerated_files=4000

opcache.revalidate_freq=60

opcache.fast_shutdown=1

opcache.enable_cli=1

sudo service php-fpm restart

 

但啓動後一直報錯502,fastcgi的日誌也只有warning的報錯

WARNING: [pool www] child 30464 exited onsignal 11 (SIGSEGV) after 22.168325 seconds from start

wKiom1SyWZfjkZ_pAANRtvuSDmk011.jpg


 

有點找不到思路, 經過一番檢查也沒有發現什麼問題,遂決定手動編譯opcache模塊來看看,

 

中間安裝的過程有個安裝包提示升級php-common,思緒沒理好,竟然把php5.4給卸載了!!簡單2到家了~~~不過也因爲這個原因才發現了問題,

# 重裝PHP環境這裏不再鰲述,只是重裝後我的環境由因爲官網源升級php由原來的php5.4.34變成了5.4.36..

# sudo wget  http://pecl.php.net/get/zendopcache-7.0.3.tgz

# sudo tar–xv zendopcache-7.0.3.tgz

# sudo cd zendopcache-7.0.3

# sudo phpize

# sudo ./configure    --with-php-config=/usr/bin/php-config

# sudo make

# sudo make install

#sudo sudo service php-fpm restart

這裏有變化的地方: README

zend_extension=/usr/lib64/php/modules/opcache.so  #原來這裏寫的是extension,因爲opcahe是由zend管理,so~~~,中文博客害死人.國內的整體IT行業還是顯得太過浮躁了,不得不說//這裏囉嗦下經驗之談,,爲了速度大家可以找中文博客(這裏也建議是那個個人博客或原創博客,51ctocsdnoschina等大博攤子大後,質量真是下降不少),但爲了質量大家一家要找英文文檔或者官網.至今從業以來,被中文博客坑的不少也不淺.

 

opcache.memory_consumption=128

opcache.interned_strings_buffer=8

opcache.max_accelerated_files=4000

opcache.revalidate_freq=60

opcache.fast_shutdown=1

opcache.enable_cli=1

memcached.use_sasl = 1

 


這裏有警告信息:

[eAccelerator] This build of  "eAccelerator" was compiled for PHP version 5.4.34. Rebuild it for  your PHP version (5.4.36) or download precompiled binaries.

 

查了下eAccelerator  opcache實現的功能類似,只是原理有所區別,考慮到這裏php.ini中將eAccelerator相關配置全部註釋,再重啓 php-fpm

 

$ sudo service php-fpm restart

久違的success,

wKioL1SyWl6hbTwHAABwmrgfbns838.jpg

# php –v   ###也顯示正常

PHP 5.4.36 (cli) (built: Dec 20 201414:09:43)

Copyright (c) 1997-2014 The PHP Group

Zend Engine v2.4.0, Copyright (c) 1998-2014Zend Technologies

with ZendOPcache v7.0.3, Copyright (c) 1999-2014, by Zend Technologies 

wKiom1SyWZeS_beOAAEEdkfvL3E307.jpg

 

phpinfo()頁面也總算顯示出來了

wKioL1SyWl7w1vuiAAE691UpRz4676.jpg

 

 

 

問題是解決了,但非常遺憾的是因爲時間的關係沒有找到問題根源

給大家提供些php5.4.的技術上問題,同時也給大家提供些上網搜索問題的小技巧吧。

 

 

 

 ~~~~~~~~~~~~~~~~~~不得不再吐槽下上傳文檔的格式亂的一塌糊塗,體驗極差,也不知道這塊51是否有排計劃改造~

 

 

 

 

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章