当前位置:首页 > 网站制作 > 正文内容

小内存VPS优化建议 LNMP+Wordpress环境

admin16年前 (2010-12-25)网站制作1192
对于 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 规则。
#WP Permalinks rewrite
rewrite ^.*/files/(.*)$ /wp-includes/ms-files.php?file=$1 last;
if (!-e $request_filename) {
rewrite ^.+?(/wp-.*) $1 last;
rewrite ^.+?(/.*\.php)$ $1 last;
rewrite ^ /index.php last;
}
#WP-super-cache rewrite
set $wp_super_cache_file ”;
set $wp_super_cache_uri $request_uri;
if ( $request_method = POST )
{
set $wp_super_cache_uri ”;
}
if ( $query_string )
{
set $wp_super_cache_uri ”;
}
if ( $http_cookie ~* “comment_author_|wordpress|wp-postpass_” )
{
set $wp_super_cache_uri ”;
}
if ( $wp_super_cache_uri ~ ^(.+)$ )
{
set $wp_super_cache_file /wp-content/cache/supercache/$http_host/$1index.html;
}
if ( -f $document_root$wp_super_cache_file )
{
rewrite ^(.*)$ $wp_super_cache_file break;
}
if (-f $request_filename)
{
expires 30d;
break;
}
if (!-e $request_filename)
{
rewrite ^(.+)$ /index.php?q=$1 last;
}
而 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 存储引擎给关掉了。这样也可以省下一定数量的内存。缓存,再缓存 1、启用 PHP 缓存加速模块 eAccelerator : 大家都知道, PHP 是动态脚本语言,每次访问都会重新编译执行,而 eAccelerator 则可以缓存编译过的部分 PHP 文件,从而起到提高 PHP 脚本性能及降低系统负载的效果。但需要注意的是,在 nginx + PHP-FPM 环境下, eAccelerator 无法进行内存共享,也就是说 PHP-FPM 的每个进程除了本身所需要的内存开销外,还会加上 eaccelerator.shm_size 参数中设定的值,所以我们在设置时尽量减小 eaccelerator.shm_size 的值,比如设置为 8 MB ,这样最多可以缓存 50 多个 php 文件,虽然少了点,但对于 WordPress 来说基本足够了,这也算是一种节约资源及增加性能的折中方案。另外,启用 eaccelerator 后对于访问速度确实有显著提高。 2、WordPress 页面缓存:建议用 Wp-super-cache 插件,这个插件的 nginx rewrite 规则之前已经有提到过。Wp-super-cache 可以起到网页静态化缓存的效果,可以进一步除低系统负载。 3、数据库查询缓存 : 为了进一步减少数据库查询次数,就需要用此类插件,这类插件很多,我在用的是 DB Cache Reloaded 。 - WordPress 模版及插件 减少不必要插件以及用简洁的模版,不要放置大量的图片,因为一旦图片一多就会产生更多的 http 连接请求数,导致页载载入速度变慢,同时也消耗更多的带宽,毕竟带宽也是 VPS 的重要资源之一。 水平有限,如有错误,敬请指正。如果你有更好的优化方案,也请在留言中分享,谢谢! # 最后介绍一些在线测试及优化工具: Just-Ping : 可以同时获取世界各地几十个位置 ping 你主机的值,从而可以判断 VPS 主机的线路质量。 Pingdom : 全页面载入测试工具,可测试访问某网页共发起了多少请求及每个请求的耗时,从而可以判断哪些网页元素比较影响载入速度,对进一步优化提供帮助。 测速宝:整体页面载入及访问速度测试工具,可以让国内各地的网友帮你测试。 转载来自: http://wowubuntu.com/vps-optimize.html

扫描二维码推送至手机访问。

版权声明:本文由博赚恋吧资源站发布,如需转载请注明出处。

本文链接:https://www.432l.com/post/3945.html

标签: 站长工具
分享给朋友:

相关文章

国外CPM联盟介绍与点评

1 http://www.adsdaq.com/adsdaq (并没有限制规定) -只在特定的国家提供cpm广告。2 http://www.addynamix.com/不要求限制 -虽然不大,但是很平易近人3 http://www.valueclickmedia.com/(3000浏览量每月) -浏览要求较低.4 http://www.morningfalls.com/(10000浏览量每月) -...

z-blog的主题制作技巧与诀窍

1.更新浏览计数在打开单页日志后产生,每刷新一次,计数加1。注意:只有在b_article-single.html有以下及第3步中介绍的代码,浏览计数才有效。在b_article-single.html模板中,你认为合适的位置加入以下代码,<span>标签内显示的就是当前文章的浏览次数。<span id="spn<#article/id#>">...

2009 Web 设计风潮—单页布局

单页布局单页布局是使用一个单一的页面展示站点的全部内容,这并不意味着站点内容少,这个页可能很复杂,包含了大量图形和动画效果,加载的时间也会有些长。比如,用户点击导航菜单后,该栏目下的新内容会在旧内容处通过渐入渐出,滑入滑出等动画效果显示出来,而页面其它部分始终保持不变。(白宫的最新网站的首页就有这个意思 - 译者)...

Google 节日 Logo 收集

1998 年Google 节日Google最初使用的Logo:  火人节 ( burning man festival 这个节日每年8月底在美国内华达黑岩沙漠举行,以异想天开与荒诞之而著称,每年吸引大量标榜自由的年轻人来以激进的方式表现自己 ) Logo:  感恩节 Logo:  Google尚处于测试版时所使用的图标 :为圣诞假期而制作的Logo:  1999年为了感恩节,Google的火鸡勇敢...

88个Blog常用工具集锦

Adminimizer ToolbarInternet Explorer 6中,更新您的Blog 最容易的工具。ashnews 一个使用PHP/MySQL打造的简单程序,允许您很容易就添加一个news/blog 系统到您的站点。AvantBlog 一个非常简单的接口:它允许您通过AvantGo这个网站,从Palm或WinCE 设备张贴一篇blog。b2 一个news/blog 工具b2.evolu...

在Google Appengine上安装SDblog

现在有不少人都有了GAE账号了,但是还是有部分人不懂怎么安装SDblog,现在我在这里简单介绍下。第一步:简要说明创建账号相关。         访问http://appengine.google.com/,使用你的Google帐号登录到App Engine管理平台。(如果你还没有Google帐号,请先申请一个)创建一...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。