My VPS, 2 GB memory, 8-core CPU test, but I did not use the above yum installation, but all installed with source code compilation. the test results are as follows:
PHP 5.3.1
MySQL 5.0.89
Nginx 0.8.33 or 0.7.65 (optional)
This is much better than what one-click installation package has been circulated on the internet. it is strongly recommended that this installation method be suitable for all Cainiao and experts. It is difficult to compile and install all the source code used on my server. I have installed some common extensions including php, PDO, eaccelerator, memcache, and tidy.
Minimize CentOS installation, and then create a new repo
# Vi/etc/yum. repos. d/centos.21andy.com. repo
Add the following content
[21Andy.com] Name = 21Andy.com Packages for Enterprise Linux 5-$ basearch Baseurl = http://www.21andy.com/centos/5/?basearch/ Enabled = 1 Gpgcheck = 0 Protect = 1 |
Or use the yum source of the Chinese Emy of science and technology:
# Cd/etc/yum. repos. d
# Mv CentOS-Base.repo CentOS-Base.repo.save
# Wget http://centos.ustc.edu.cn/CentOS-Base.repo
Can also use http://mirrors.163.com/.help/CentOS-Base-163.repo (NetEase, also good)
Enable EPEL repo
CentOS i386 input the following command
Rpm-ihv http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
Run the following command in CentOS x86_64:
Rpm-ihv http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm
Then import the key
Rpm -- import/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL
OK. One-click installation.
Yum-y install nginx mysql-server php-fpm php-cli php-pdo php-mysql php-mcrypt php-mbstring php-gd php-tidy php-xml php-xmlrpc php- pear php-pecl-memcache php-eaccelerator |
Last
Yum-y update
It's all the latest.
If you want to use the latest stable version 0.7.65 for nginx
Yum-y install nginx
Change
Yum-y install nginx-stable
You can.
After installation, you can play it like this (note that this tutorial cannot install php-fpm on the i386 platform, prompting that the package does not exist !)
Service mysqld start
Service php-fpm start
Service nginx start
Don't forget to set startup
Chkconfig -- level 345 mysqld on
Chkconfig -- level 345 php-fpm on
Chkconfig -- level 345 nginx on
You can find the configuration files under/etc.
Check whether automatic installation
Dependencies Resolved ========================================================== ============================ Package Arch Version Repository Size ========================================================== ============================ Installing: Mysql x86_64 5.0.89-1. el5 21Andy.com 3.5 M Mysql-server x86_64 5.0.89-1. el5 21Andy.com 10 M Nginx x86_64 0.8.33-3. el5 21Andy.com 422 k Php-cli x86_64 5.3.1-2. el5 21Andy.com 2.4 M Php-eaccelerator x86_64. 9.6-1. el5 21Andy.com 118 k Php-fpm x86_64 5.3.1-2. el5 21Andy.com 1.2 M Php-gd x86_64 5.3.1-2. el5 21Andy.com 110 k Php-mbstring x86_64 5.3.1-2. el5 21Andy.com 1.1 M Php-mcrypt x86_64 5.3.1-2. el5 21Andy.com 27 k Php-mysql x86_64 5.3.1-2. el5 21Andy.com 84 k Php-pdo x86_64 5.3.1-2. el5 21Andy.com 91 k Php-pear noarch. 9.0-1. el5 21Andy.com 420 k Php-pecl-memcache x86_64 2.2.5-3. el5 21Andy.com 44 k Php-tidy x86_64 5.3.1-2. el5 21Andy.com 31 k Php-xml x86_64 5.3.1-2. el5 21Andy.com 115 k Php-xmlrpc x86_64 5.3.1-2. el5 21Andy.com 48 k Installing for dependencies: Gmp x86_64 4.1.4-10. el5 base 201 k LibXaw x86_64 1.0.2-8.1 base 329 k LibXmu x86_64 1.0.2-5 base 63 k LibXpm x86_64 3.5.5-3 base 44 k Libedit x86_64 2.11-2.20080712cvs.el5 epel 80 k Libmcrypt x86_64 2.5.8-4. el5.centos extras 105 k Libtidy X 86_64 0.99.0-14.20070615.el5 epel 140 k Php-common x86_64 5.3.1-2. el5 21Andy.com 554 k Sqlite2 x86_64 2.8.17-5. el5 21Andy.com 165 k T1lib x86_64 5.1.1-7. el5 epel 208 k Updating for dependencies: Libevent x86_64 1.4.12-1. el5 21Andy.com 129 k Transaction Summary ========================================================== ============================ Install 26 Package (s) Update 1 Package (s) Remove 0 Package (s) |
View Nginx + php-fpm Benchmark performance test
The following tests the performance of Nginx + php-fpm on my local virtual machine and VPS respectively.
My local virtual machine test, configured as PD930 dual-core 3.0 GB, 2 GB memory, allocated 1 GB memory to the virtual machine, the installed system is CentOS 5.4 64bit
Test content:
500 concurrent testing, CPU usage reaches 30%, system load is around 10, the page is still fast to open
[Root @ localhost ~] # Website- c 500-t 30 http: // 127.0.0.1/
Webbench-Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET http: // 127.0.0.1/
500 clients, running 30 sec.
Speed = 223504 pages/min, 21806556 bytes/sec.
Requests: 111752 susceed, 0 failed.
2000 concurrent testing, CPU usage 35%, system load around 18, the page is still fast
[Root @ localhost ~] # Website- c 2000-t 30 http: // 127.0.0.1/
Webbench-Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET http: // 127.0.0.1/
2000 clients, running 30 sec.
Speed = 429494 pages/min, 39004788 bytes/sec.
Requests: 214747 susceed, 0 failed.
5000 concurrent testing, CPU usage of 30%, system load to 35, the page playing speed is not bad, read this data, the 15 million PHP request that was said a few days ago has nothing to do
[Root @ localhost ~] # Website- c 5000-t 30 http: // 127.0.0.1/
Webbench-Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET http: // 127.0.0.1/
5000 clients, running 30 sec.
Speed = 788986 pages/min, 66952700 bytes/sec.
Requests: 394493 susceed, 0 failed.
Not quite comfortable yet. Abnormal, 10000 concurrent
10000 concurrency, CPU usage less than 30%, system load increased from around 60 to around 1000, dizzy! It can still be opened! Just a Click card! When the load reaches more than 600, it doesn't even get stuck! Crazy. I am still a virtual machine, and webbench is still running on my own machine. it's too powerful.
[Root @ localhost ~] # Website- c 10000-t 30 http: // 127.0.0.1/
Webbench-Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET http: // 127.0.0.1/
10000 clients, running 30 sec.
Speed = 1513718 pages/min,-17973622 bytes/sec.
Requests: 756859 susceed, 0 failed.
My VPS, 2 GB memory, 8-core CPU test, but I did not use the above yum installation, but all installed with source code compilation. the test results are as follows:
500 concurrency, 20% CPU usage, about 2 loads
# Webbench-c 500-t 30 http: // 127.0.0.1/index. php
Webbench-Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET http: // 127.0.0.1/index. php
500 clients, running 30 sec.
Speed = 120520 pages/min,-36244332 bytes/sec.
Requests: 60260 susceed, 0 failed.
2000 concurrency, CPU usage around 20%, load around 2, no changes
Webbench-c 2000-t 30 http: // 127.0.0.1/index. php
Webbench-Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET http: // 127.0.0.1/index. php
2000 clients, running 30 sec.
Speed = 111454 pages/min,-44285944 bytes/sec.
Requests: 55727 susceed, 0 failed.
The same is true for the 3000 concurrency, but it takes a few seconds to open the page. suddenly, it means that the process is running less and there is still room for it.
Now I understand what happened to stable access to the 15 million PHP request a few days ago. haha, you only need to install CentOS 5.4 64bit and then install it using the yum method above.