在96M内存的VPS上跑高性能的LAMP应用WordPress
通常情况下,在一个96M内存的VPS上安装apache2,mysql,php5之后再安装一个wordpress,那么apache在相应三五的连接请求之后,VPS的内存就几乎快要用完了,这时候如果连接请求不断增加,VPS将会内存耗尽,内存耗尽之后,无论有没有swap,CPU的占有率就会很高。我们RasHost VPS已经有很多客户都碰到过这种情况。实践证明,96M内存的VPS使用Apache跑PHP的应用不能支持大的并发。主要原因就是apache+mod_php的内存占用比较高。
为了解决这个问题,我们采用了Nginx+FastCGI PHP+MySQL的方案。Nginx是Web Server的后起之秀,性能比Apache高出不少。实践证明Nginx+FastCGI PHP+MySQL比Apache+PHP要节省资源!
在Linux VPS下配置Nginx+FastCGI PHP+MySQL需要如下几个步骤:
- 配置nginx+fastcgi php+mysql的环境
- 安装wordpress
- 配置nginx URL rewrite用以支持wordpress的永久链接。
location / {
root /var/www/nginx-default;
index index.php index.html index.htm;
if (!-e $request_filename) {
rewrite ^(.+)$ /blog/index.php?q=$1 last;
}
}
增加的部分就是这个if语句。这个if语句的意思是:如果碰到一个连接请求($request_filename),而这个连接请求所代表的文件是不存在的(!-e表示不存在,熟悉bash编程的人应该能看出来),那么将改写这个请求的URL,改写方式按照这个rewrite语句进行。
然后重启nginx就可以了,一个96M内存的VPS上的高性能的WordPress就有了!这个配置能跑多少个并发还有待测试!
Comments
九六免费电影 (not verified)
Mon, 2008-06-02 20:18
Permalink
96M?我现在用的是512M的
96M?我现在用的是512M的
黄小豆 (not verified)
Wed, 2011-05-11 23:54
Permalink
长沙163医院
刚学习这个,找到了你的博客,我可以加你吗?想多多请教VPS的问题
admin (not verified)
Mon, 2008-06-02 20:25
Permalink
是96M的,96M跑apache费劲,所以我才搞起了ngi
是96M的,96M跑apache费劲,所以我才搞起了nginx
foolpig (not verified)
Tue, 2008-06-03 11:19
Permalink
呵呵,我的博客也是用CentOS+nginx+php的架构
呵呵,我的博客也是用CentOS+nginx+php的架构