对于 VPS 来说,内存应该是最宝贵的资源之一了,内存越小价格也就越便宜,普通用户也越能接受。因此如何有效利用有限的内存资源,使 VPS 的利用率最大化,能承载更高的并发数及负载,这应该是所有 VPS 用户都在思考的问题。下面,就结合我在维护本站时候获取的一些经验给出一些相应的建议,当然这份优化建议主要是针对 Linux 环境及 WordPress 用户。
- 稳定的 VPS 服务器
所有的上层内容都依托于稳定的硬件支持,所以如果你购买的 VPS 主机线路巨慢、三天两头挂掉、或者有时 VPS 母机 IO 负载超高,那么,就算再怎么优化也没有任何用处,你整天干的事情就是发 Ticket 找客服解决问题。所以,选购一台稳定快速的 VPS 主机这是最基础的要求。
- 轻量级 Web Server
Apache 已经变得越来越臃肿了,内存开销非常大,所以个人建议用轻量级的 Nginx 服务器,而对于 WordPress 来说 nginx 已经完全够用了。这里是适用于 WordPress 3 的 nginx rewirte 规则,包括 Permalinks rewrite 及 WP-super-cache rewrite 规则。
而 PHP 方面则建议用 PHP-FPM , PHP-FPM 已经包含在 PHP 5.3.3 中,对于小内存 VPS 用户建议用静态进程方式,也就是固定几个进程,同时建议少开几个进程,比如 4-6 个左右。
Ubuntu 上可以用以下命令直接安装 nginx , php-fpm , mysql 环境
sudo apt-get install nginx php5 php5-dev php5-fpm php5-mysql mysql-server make
- 充分利用多核
Nginx 在 Linux 上有一个 worker_cpu_affinity 参数,可以为每个工作进程绑定到不同的 CPU ,所以如果你的 VPS 具有多核的话,那么可以充分利用各 CPU 。比如如果有 4 个 CPU,那么可以进行如下配置:
worker_processes 4;
worker_cpu_affinity 0001 0010 0100 1000;
最后你可以查看一下 CPU 状态,测试方法是输入 top 命令并按 1 。
- MySQL 优化
关掉InnoDB:如果 VPS 只是用来跑 Worpdress 的话,用 MyISAM 存储引擎就足够了。你只需在my.cnf加入一行 skip-innodb 就可以把 InnoDB 存储引擎给关掉了。这样也可以省下一定数量的内存。
- 缓存,再缓存
- WordPress 模版及插件
减少不必要插件以及用简洁的模版,不要放置大量的图片,因为一旦图片一多就会产生更多的 http 连接请求数,导致页载载入速度变慢,同时也消耗更多的带宽,毕竟带宽也是 VPS 的重要资源之一。
End
水平有限,如有错误,敬请指正。如果你有更好的优化方案,也请在留言中分享,谢谢!
# 最后介绍一些在线测试及优化工具:
12 Responses to 小内存 VPS 优化建议 (LNMP+WordPress 环境)
sagi
十二月 23rd, 2010 at 3:36 下午
还可以再进一步优化,去掉Mysql,使用sqlite
ledmirage
十二月 23rd, 2010 at 10:38 下午
php-fpm 和 nginx 的接口可以尝试用 unix socket + share memory ( /dev/shm )
对性能应该有所提升
小内存VPS优化建议 LNMP+Wordpress环境 | 18e3要来看看
十二月 24th, 2010 at 9:37 下午
[…] 文章来源:https://wowubuntu.com/vps-optimize.html 转载请注明链接出处 诺基亚 多美滋 保湿 蜜雪儿 BB霜 蒙奇奇 杰克琼斯 Tata […]
推荐插件-wp-super-cache | My Life, My Love!
十二月 25th, 2010 at 12:22 上午
[…] 参考资料: [1] 小内存 VPS 优化建议 (LNMP+WordPress 环境) https://wowubuntu.com/vps-optimize.html [2] Pingdom tools http://tools.pingdom.com [3] Code Exchange: nginx rewrite rules for WordPress + […]
» 高性价比 Ubuntu VPS Wow! Ubuntu / Ubuntu 及 Linux 新闻、技巧、软件及游戏!
十二月 28th, 2010 at 9:03 上午
[…] 请看小内存 VPS 优化建议 (LNMP+WordPress 环境) 。 […]
LNMP+WordPress环境 小内存VPS优化建议 « 冷眼热评
一月 11th, 2011 at 1:56 上午
[…] 原文地址:链接 […]
aenon
二月 14th, 2011 at 3:31 下午
sqlite做数据库是可以的。安装的时候会出一点小bug,不过使用起来是正常的。
用 Varnish 加速 WordPress [技巧] | Wow!Ubuntu
二月 25th, 2011 at 3:33 下午
[…] 上次在” 小内存 VPS 优化建议 ” 一文中我们说到,有效提升网站访问速度的方案之一是使用缓存。所以,我们同样也可以在 VPS 上用基于缓存机制的 Varnish 来进一步提升 WordPress 的访问速度,Varnish 是一个轻量级、高效能的反向代理缓存服务器,特点是简单易用、速度快,但内存使用比较多。 […]
枯の灵
三月 10th, 2011 at 2:17 下午
写得非常详尽 学习了
ghosTM55
四月 4th, 2011 at 1:29 下午
学习了!
靖难
十月 8th, 2011 at 3:23 下午
呵呵,按楼主的方法优化了我的Linode主机,感觉很不错~
叽歪
十一月 25th, 2011 at 9:14 上午
确实很好的教程,对小内存很管用。我的vps是2G的内存,请问怎样充分利用呢?现在看了下,内存使用才200MB,感觉利用率太低了。