网站迁移到阿里云ECS,同时升级到HTTP/2,顺便拔拔草

2017-10-13

HTTP/2

从2012年以来,我就一直在用万网(阿里云)旗下的产品(虚拟主机)。可以肯定的说,他们家的东西,无论速度还是稳定性,都还是很不错的。可惜随着HTTP/2在网络上的广泛应用,这款虚拟主机越来越不能满足需求了——尽管拥有独立IP,却依然不能使用HTTPS访问;而且,很多的优技术也因为虚拟主机的局限性而不能得到应用(作为一个追求极致的Geeker,这点绝不能忍)。所以将网站迁移到云主机上,便早早地被我提到了日程上面。

但是因为本站已经有将近两年的时间没有更新了,所以我也一直摇摆不定——为了一个常年不更新的网站上个一年好几百块的云主机,究竟值不值得。于是在左右摇摆之中,上云主机这件事便被拖了下来。

上个月恰逢阿里云ECS搞活动,800RMB可以买3年,折合一年266.67,简直是白菜价!所以我便毫不犹豫地入手了一枚。而后就是老套的那些步骤,搭服务器、建数据库、数据迁移、站点优化什么的,基本毫无压力。可是吧,服务器尽管已经搭好了,稳定性却还没有经过验证。所以这几周以来,我便让服务器空转了一段时间,并持续观察服务器的性能和稳定性。根据监控日志显示,这台服务器的在线率和负载情况还是很不错的,所以思虑再三,我最终决定把网站迁移过来。当然,随着网站负载的增大,服务能否稳定如初,还是有待进一步观察的。

相比虚拟主机的各种限制,云服务器可优化的手段更加丰富,所以对于迁移后网站的速度和稳定性而言,我还是有不少信心的。比如,本次优化比较显著的一个手段,就是采用Redis Object Cache插件和Redis服务器配合,将WordPress的配置信息(wp_options)加载到内存中,进而通过内存访问代替磁盘I/O来达到提高服务器响应速度的目的。再结合WP Super Cache插件生成的静态缓存,优化的效果就更加佳明显了。

说到这里,我需要说明的一点是,我看到网络上一些文章,说是只用Redis Object Cache插件就可以达到缓存页面的目的,但是我通过分析Redis数据库中的数据发现,其实Redis Object Cache插件只是将wp_options表中的配置信息加载到了Redis服务器中,并不包括生成页面的缓存数据。当然,这么做不能说是没有效果,但性能优化却还远远没有达到极致——如果只缓存配置项的话,每次的页面访问仍然需要从MySQL数据库读取数据。此时的MySQL服务器,一来容易因为云主机的I/O速度缓慢成为瓶颈,二来可能因吃满服务器内存而导致宕机问题。所以在使用该插件的同时,再采用一个类似WP Super Cache之类的页面缓存插件加以配合,还是很有必要的。当然,Redis服务器的最大内存一定要控制好,要不也可能因为内存吃满而出现宕机。

今天本来只是想记个流水账,没想到一不小心就说了这么多。行了,就这样吧,将来有时间的话,继续将废话进行到底。从2010年写博至今,博客从兴起到衰落,好多博主(包括我在内)陆陆续续停更了,甚至索性连网站也一起关掉了。能坚持到今天的,实在聊聊。回顾过去写博的那段时光,写作带给我的收获还是蛮大的,一来在知识的归纳整理中掌握得更加牢固;二来锻炼了文笔能力,提笔写作毫不费力。但是要想笔缀不耕,还是有很大难度的,毕竟一个人可以分享的知识还是有限的。越是到后来,我越感到力不从心,可以写的东西越来越少,直到后来实在写不出什么东西来了,所以索性也就什么都不写了。而停笔的这些时间,或许肚子里又灌了些许墨水吧,隐隐感觉又有些东西可以写了,甚至偶尔发现有些学到的东西,网络上也不好找到。所以,我的写作之路,或许又可以继续了。


除非特殊说明,本博客文章均为原创,转载请以链接形式标明博文地址。

本文链接地址: 网站迁移到阿里云ECS,同时升级到HTTP/2,顺便拔拔草

分类:随笔文章 | 标签: |