LAMP 搭建和壓力測試

LAMP 搭建和壓力測試

(1) CentOS 7, apm+xcache, rpm, phpmodule;

                   a)一個虛擬主機提供phpMyAdmin,另一個虛擬主機提供wordpress

                   b)phpMyAdmim提供https服務;         

(2) CentOS 7, amp + xcache rpm包,php-fpm

                   a)httpd, php, mariadb分別部署在一個單獨的主機上;

                   b)一個虛擬主機提供phpMyAdmin,另一個虛擬主機提供wordpress

                   c)phpMyAdmim提供https服務;

(3) 對以上所有部署做壓力測試,並對比測試結果,寫出測試報告;

 

Server規劃

                   CentOS71(172.16.126.1)                            httpd+php+mariadb

                   CentOS72(172.16.126.3192.168.0.72)  php-fpm

                   CentOS73(192.168.0.74)                            mariadb

搭建

                  

(1).

         a).安裝相應軟件(Cent71)

                   [CentOS71:~]yuminstall httpd mod_ssl

                   [CentOS71:~]yuminstall php php-mysql php-mbstring php-xcache

                   [CentOS71:~]yuminstall mariadb mariadb-server

                   [CentOS71:~]ls/var/www/html

                   drwxr_xr_x…………………………………………….wordpress

                   drwxr_xr_x……………………………………………..phpMyAdmin

                   [CentOS71:~]rm–f /etc/httpd/cond.f/ssl.conf

         b).配置文件:

                   [CentOS71:~]cat/etc/httpd/conf.d/vhost.conf

                   Listen443

<VirtualHost 172.16.126.1:443>

                            ServerName www.pma.magedu.com

                            DocumentRoot /data/web/www1

 

                            SSLENGINE on

                            SSLCertificateFile /etc/httpd/CA/cacert.pem

         SSLCertificateKeyFile/etc/httpd/CA/cakey.pem

#密鑰證書在上一博客有申請

 

                            <Directory /data/web/www1 >

                                      Options ALL

                                      AllowOverride none

                                      Require all granted

                            </Directory>            

</VirtualHost>

 

<VirtualHost 172.16.126.1:80>

                            ServerName www.wordpress.magedu.com

                            DocumentRoot /data/web/www1

                            <Directory /data/web/www1>

                                    Options ALL

                                    AllowOverride none

                                    Require all granted

                           </Directory>

</VirtualHost>

         [CentOS71:~]systemctlstart httpd

         [CentOS71:~]systemctlstart mariadb

         [CentOS71:~]mysql

         Mariadb[none]>createdatabase wordpress

         Mariadb[none]>grantall on wordpress.* ‘testuser’@’172.16.%.%’ identified by ‘password’

         Mariadb[none]>\q

         [CentOS71:~]-----文件/data/web/www1/wordpress/wp-config.php修改

define('DB_NAME', 'wordpress');

define('DB_USER', 'testuser');

define('DB_PASSWORD', 'passwrod');

define('DB_HOST', '172.16.126.1');

         [CentOS71:~]---------文件 /data/web/www1/phpMyAdmin/libraries/config.default.php修改

                            $cfg['blowfish_secret']= 'HmVGDMOPXOSH2xH';

                            $cfg['Servers'][$i]['host']= '172.16.126.1';

                            $cfg['Servers'][$i]['port']= '3306';

############################ok

 

2).

         a).安裝軟件與配置

[CentOS71:~]echo–e “ProxyRequests off\nProxyPassMatch ^/(.*\.php)$  fcgi://172.16.126.3:9000/data/web/www1\n”>> /etc/httpd/conf.d/vhost.conf

 

                   [CentOS73:~]yuminstall mariabd mariadb-server

                   [CentOS73:~]systemctlstart mariadb

                   [CentOS73:~]mysql

                   Mariadb[none]>createdatabase wordpress

Mariadb[none]>grantALL on wordpres.* to ‘testuser’@’192.168.0.%’ identified by ‘passwrod’

Mariadb[none]>\q

 

                   [CentOS72:~]yuminstall php-fpm php-mysql php-mbstring php-mysql

                   [CentOS72:~]----文件/etc/php-fpm.d/www.conf

                                     listen= 172.16.126.3:9000

                                     listen.allowed_clients= 172.16.126.1

                   [CentOS72:~]tail-2 /etc/php-fpm.d/www.conf

                            php_value[session.save_handler]= files

php_value[session.save_path] = /var/lib/php/session

                  

                   [CentOS72:~]mkdir/var/lib/php/session

                   [CentOS72:~]chonwapache:apache /var/lib/php/session

                   [CentOS72:~]

                   [CentOS72:~]mkdir–p /data/web~

                   [CentOS72:~]scp[email protected]:/data/web/www1/data/web/

                   [CentOS71:~]-----文件/data/web/www1/wordpress/wp-config.php修改

define('DB_NAME', 'wordpress');

define('DB_USER', 'testuser');

define('DB_PASSWORD', 'passwrod');

define('DB_HOST', '192.168.0.74');

                   [CentOS71:~]---------文件 /data/web/www1/phpMyAdmin/libraries/config.default.php修改

                            $cfg['blowfish_secret']= 'HmVGDMOPXOSH2xH';

                            $cfg['Servers'][$i]['host']= '192.168.0.74';

                            $cfg['Servers'][$i]['port']= '3306';

 

                   [CentOS71:~]systemctlstart php-fpm

################################ok

 

壓力測試

Point 測試腳本:

[CentOS674:~]cat netyali 

#!/bin/bash

#usage netyali [url] [file]

#url 測試url如:http://172.16.126.1/index.php

#file 數據保存的路徑

for i in 1 2 4 8 16 32 64 128

do

         forj in  10 100 200 500 1000 1500  2000 25003000 4000

         do

                   if[ $i -le $j ]; then

                           

                   /usr/local/apache24/bin/ab-c $i -n $j $1 |sed -r -e '/^$/d'  -e'/^[[:space:]]/d'  |tail  -n +5|head -16|tr -s " "|gawk -F:'{ printf("%s\t",$2)}END{print}' >>$2

                   fi

         done

done

#####測試https head  -16 中的16 改成17 因爲ab多了一條SLLprotocol

[CentOS674:~]----數據格式化命令:gawk-F "\t" '{for(i=1;i<NF;i++){split($i,a," "); b[i]=a[1]}for (j in b){printf("%s ",b[j])} printf("\n")}'

#注意命令的數據左右位置和ab命令上下位置不一致  每次測試出75條記錄

 

[CentOS71:~]cat/data/web/www1/inde.php

172.16.126.1

<?php

                   $conn= mysql_connect('172.16.126.1','testuser','mageedu');

                   if($conn)

                            echo" 172.16.126.1 OK";

                   else

                            echo"172.16.126.1 Failure";

?>

<?php

         phpinfo();

?>

[CentOS72:~] cat /data/web/www1/inde.php

172.16.126.3

<?php

                $conn =mysql_connect('192.168.0.74','testuser','mageedu');

                if($conn)

                        echo "192.168.0.74 OK";

                else

                        echo "192.168.0.74Failure";

?>

<?php

         phpinfo();

?>

 

詳細測試數據如下和附件(有具體數據和圖示)

wKioL1eM9R7gwny3AADC_V6Vt_8368.jpg-wh_50

wKioL1eM9R6R6QfzAADMxyBZuI4674.jpg-wh_50

wKiom1eM9R6jJIHIAADDuBuvsvc987.jpg-wh_50

wKiom1eM9R-QOE_wAAERXH6HtUE162.jpg-wh_50

wKioL1eM9R-xjDQpAADL7pur3lI597.jpg-wh_50

wKiom1eM9R-xHGhMAAE2vKfTQ48201.jpg-wh_50


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