安裝環境:
[root@station11 ~]# lsb_release -a
Distributor ID: CentOS
Description: CentOS release 6.8 (Final)
Release: 6.8
Codename: Final
Development tools
Server Platform Development
軟件版本:
apr-1.5.0.tar.bz2
apr-util-1.5.3.tar.bz2
httpd-2.4.10.tar.bz2
mariadb-5.5.46-linux-x86_64
php-5.6.4.tar.xz
xcache-3.2.0.tar.bz2
wordpress-4.3.1-zh_CN.zip
編譯安裝apr:
mkdir /apps
tar xf apr-1.5.0.tar.bz2
cd apr
./configure –prefix=/apps/apr
make -j 4 && make install
編譯安裝apr-util:
tar xf apr-util-1.5.3.tar.bz2
cd apr-util-1.5.3
./configure –prefix=/apps/apr-util –with-apr=/apps/apr
make -j 4 && make install
編譯安裝httpd:
[root@station11 ~]# tar xf httpd-2.4.10.tar.bz2
[root@station11 ~]# cd httpd-2.4.10
yum install pcre-devel -y
./configure –prefix=/apps/apache2.4 –sysconfdir=/etc/httpd2.4 –libexecdir=/apps/apache2.4/lib –enable-so –enable-ssl –enable-cgi –enable-rewrite –with-zlib –with-pcre –with-apr=/apps/apr –with-apr-util=/apps/apr-util –enable-modules=most –enable-mpms-shared=all –with-mpm=prefork #可以用./configure –help 看你需要編譯的模塊
make -j 4 && make install
–prefix=/apps/apache2.4 #安裝位置
–sysconfdir=/etc/httpd2.4 #配置檔位置
–libexecdir=/apps/apache2.4/lib #庫文件存放位置
–enable-so #支持DSO動態裝載模塊
–enable-ssl #支持SSL/TLS,可實現https協議訪問,需要安裝openssl-devel
–enable-cgi #支持CGI腳本
–enable-rewrite #支持URL偽靜態重寫
–with-zlib #使用指定的zlib壓縮庫,不指定路徑會自動尋找
–with-pcre #使用指定的pcre庫,增強的正則表達式分析工具;不指定路徑會自動尋找 需已安裝pcre-devel;
–with-apr=/usr/local/apr #指定依賴apr程序安裝位置
–with-apr-util=/usr/local/apr-util #指定依賴apr-util程序安裝位置
–enable-modules=most #支持動態啟用模塊;all:所有,most:常用
–enable-mpms-shared=all #編譯并共享模塊
–with-mpm=prefork #默認啟用模塊{prefork|worker|event}
編輯vim /etc/profile.d/http.conf如下:
PATH=/apps/http/bin:$PATH
. /etc/profile.d/http.conf
頭文件:
ln -sv /apps/http/include/ /usr/include/http
幫助文件:
vim /etc/man.config,添加一行
MANPATH /apps/http/man
httpd -k start
iptables –F
setenforce 0
查看80端口是否啟動:
[root@station11 httpd-2.4.10]# ss –ntl
用瀏覽器查看:
編譯安裝mariadb-server ,使用通用二進制格式安裝;
tar xf mariadb-5.5.46.tar.gz -C /apps/
cd /usr/local/
ln -sv /apps/mariadb-5.5.46 mysql
useradd -r -M -s /sbin/nologin mysql
cd mysql/
chown -R root.mysql ./*
mkdir -pv /mysql/data
chown -R mysql.mysql /mysql/data/
mkdir /etc/mysql
cp support-files/my-large.cnf /etc/mysql/my.cnf
vim /etc/mysql/my.cnf
在[mysqld]字段添加:
datadir = /mysql/data
skip_name_resolve = ON
innodb_file_per_table = ON
cp support-files/mysql.server /etc/init.d/mysqld
chkconfig –add mysqld
chkconfig –list mysqld
./scripts/mysql_install_db –user=mysql –datadir=/mysql/data/ 注意:這個要執行在啟動服務之前,否則服務啟動不了
service mysqld start
bin/mysql_secure_installation #初始化數據庫
查看3306端口是否啟動
vim /etc/profile.d/mysql.conf
PATH=/usr/loacl/mysql/bin:$PATH
ln -sv /apps/mariadb-5.5.46-linux-x86_64/include/ /usr/include/mysql
vim /etc/ld.so.conf.d/http.conf
/usr/local/mysql/lib
ldconfig
ldconfig –p | grep mysql查看庫是否加載上
vim /etc/man.config
MANPATH /usr/local/mysql/man
編譯php
tar xf php-5.6.4.tar.xz
cd php-5.6.4
yum install -y libxml2-devel
yum install bzip2-devel
yum install -y libmcrypt-devel #是epel源的軟件,安裝前要配置yum的epel源
./configure –prefix=/apps/php –with-mysql=/usr/local/mysql –with-openssl –with-mysqli=/usr/local/mysql/bin/mysql_config –enable-mbstring –with-png-dir –with-jpeg-dir –with-freetype-dir –with-zlib –with-libxml-dir=/usr –enable-xml –enable-sockets –with-apxs2=/apps/http/bin/apxs –with-mcrypt –with-config-file-path=/etc –with-config-file-scan-dir=/etc/php.d –with-bz2 –enable-fpm ###編譯了fpm,且在編譯httpd的時候編譯的是prefork,如果編譯httpd選擇的是work或者event,這里需要編譯–enable-maintainer-zts;
make -j 4 && make install
cp php.ini-production /etc/php.ini
vim /apps/http/conf/httpd.conf
#
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php
AddType application/x-httpd-source .phps
添加上面標紅的兩行
#
<IfModule dir_module>
DirectoryIndex index.php index.html ###添加index.php
</IfModule>
<IfModule proxy_html_module>
Include conf/extra/proxy-html.conf ##確保沒有被注釋掉
</IfModule>
DocumentRoot "/apps/http/htdocs"
ProxyRequests off
ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/apps/http/htdocs/$1 ##添加該兩行
#LoadModule php5_module modules/libphp5.so 注釋掉該行
LoadModule proxy_module modules/mod_proxy.so
#LoadModule proxy_connect_module modules/mod_proxy_connect.so
#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so ##確保紅色的沒有被注釋掉
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
LoadModule proxy_scgi_module modules/mod_proxy_scgi.so
cp php.ini-production /etc/php.ini
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chkconfig –add php-fpm
chkconfig –list php-fpm
[root@station11 php-5.6.4]# service php-fpm start
Starting php-fpm done
httpd -k restart
vim /apps/http/htdocs/index.php
<?php
phpinfo();
?>
在瀏覽器上查看
啟用的是FastCGI
進入數據庫:
MariaDB [(none)]> create database wpdb;
MariaDB [(none)]> grant all privileges on wpdb.* to wpuser@'%' identified by "walker";
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> quit
編輯[root@station11 ~]# vim /apps/http/htdocs/index.php
<?php
$conn = mysql_connect('172.16.251.11','wpuser','walker');
if($conn)
echo "OK";
else
echo "Failure";
phpinfo();
?>
用瀏覽器查看:
鏈接數據庫成功
unzip /root/wordpress-4.3.1-zh_CN.zip -d .
chmod a+w wordpress
http://172.16.251.11/wordpress初始化完成后:
使用ab命令進行壓力測試:
Requests per second: 10.74 [#/sec] (mean)
Time per request: 1861.955 [ms] (mean)
Time per request: 93.098 [ms] (mean, across all concurrent requests)
Transfer rate: 4.53 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 3 12.7 1 129
Processing: 249 1817 266.1 1805 2718
Waiting: 249 1817 265.8 1803 2718
Total: 254 1820 267.3 1808 2719
Percentage of the requests served within a certain time (ms)
50% 1808
66% 1900
75% 1966
80% 2003
90% 2131
95% 2226
98% 2374
99% 2452
100% 2719 (longest request)
編譯安裝xcache提升并發等級:
tar xf xcache-3.2.0.tar.bz2
cd xcache-3.2.0
/apps/php/bin/phpize
./configure –enable-xcache –with-php-config=/apps/php/bin/php-config
make -j 4 && make install
mkdir /etc/php.d
cp xcache.ini /etc/php.d/
service php-fpm restart
查看:
http://172.16.251.11/index.php
出現上面的就說明xcache載入成功,現在再用ab做壓力測試:
[root@localhost xcache-3.2.0]# ab -c 20 -n 500 http://172.16.251.11/wordpress/wp-admin/
Requests per second: 32.74 [#/sec] (mean)
Time per request: 610.851 [ms] (mean)
Time per request: 30.543 [ms] (mean, across all concurrent requests)
Transfer rate: 13.81 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 2 6.9 1 94
Processing: 112 598 113.9 588 1156
Waiting: 111 598 113.8 587 1156
Total: 122 600 112.8 591 1157
Percentage of the requests served within a certain time (ms)
50% 591
66% 622
75% 644
80% 660
90% 712
95% 777
98% 914
99% 1034
100% 1157 (longest request)
著色區域更沒有xcache相比有很大的提升。
原創文章,作者:王更生,如若轉載,請注明出處:http://www.www58058.com/64411