比尔盖子 博客

Tag: Linode

比尔盖子最近做的事情——优化优化再优化

先说说公告。大家都应该知道了,七月份,比尔盖子换到了Linode主机。但是由于比尔盖子没有经过强调,大家可能都不知道比尔盖子换域名网址了。由于比尔盖子博客表现出与比尔盖子所有网站都独立的性质,所以购买了新域名。以前的blog.biergaizi.com已经变更为biergaizi.info,如果访问blog.biergaizi.com也会自动转到biergaizi.info。这个新域名怎么记呢?比尔盖子的网站是biergaizi.com;博客是biergaizi.info就是了。

从上个月的事情开始絮叨。上个月,比尔盖子博客使用了Cloudflare进行整站CDN加速。加速效果还是有的,但是唯一的悲剧是不能使用HTTPS。而且,有时候CDN服务器还抽风。虽然说使用CDN能避免Linode的抽风导致网站不正常,但是如果Cloudflare抽风Linode不抽风,也是一种悲剧。再有,Cloudflare的加速效果也不是很明显,因为它在中国/中国香港/中国台湾都没有服务器,因此Cloudflare对此任何形式的中国人都没有加速效果。而只能主要对美国佬进行加速。

经过一番调查,最后发现了个收费不错的CDN,亚马逊云CDN——Cloudfront。收费也是一贯“的亚马逊云作风”:按量收费。而且每GB也不过0.15$而已。即使对比尔盖子所有流量进行加速,一个月也只不过50¥而已。加速支持两种类型,其一是使用亚马逊的域名,其二是可以使用别名记录来使用自己的域名。但是,如果使用别名记录的话,虽然可以达到整站加速的效果,但是会无法使用HTTPS。因此,比尔盖子选择了第一种方案:使用比尔盖子的服务器来加载网站主体,而使用Cloudfront进行网站所有资源(如图片、JS等)进行加速。部署完了,加速效果没有经过测试,不过反正是能减少VPS的负担就是了。

这样一来,CDN就算是折腾完了,接下来是折腾HTTPS加密。由于买biergaizi.info这个域名的时候送了一个SSL证书,不用也是闲着,用了还能让博客更安全,防止被XX,何乐而不为呢?开始折腾了,导致了Apache不断报错抗议,网站宕机2小时。好不容易折腾完了,除了发现网站变慢的,还发现用了加密以后网站反而提示不安全,总是有一些不安全的脚本啊,图片啊什么的。

最后下载了一个插件来强制HTTPS加密,这下查看源代码,果然没有那些不安全的元素了,但是浏览器依然提示不安全。经过论证,发现这个不安全的元素原来是比尔盖子使用的“量子横道网站统计”的JS代码!最后没办法, 量子恒道如何的烂我也没有抛弃,最后抛弃它的原因居然是没有HTTPS,量子恒道得重视这个问题了。最后还是使用了Google分析。这下网站的安全标志终于出现了。

不过问题又来了,自从“比尔盖子 博客”采用了HTTPS加密以后,速度就很慢、很慢、很慢,慢的比尔盖子自己都难以忍受了。比尔盖子甚至有增加“HTTP透明访问”功能的考虑,但最后由于安全期间,没有实施。比尔盖子到现在也很疑惑是什么原因,因为理论上讲,HTTPS并不会使网站变慢多少啊,何况我使用的还是日本人的“Camellia 256”加密算法,而不是通常的“AES 256″加密算法,理论上还会比AES快一点。

不管这么多了,反正优化优化就是了。于是使用Yslow+Pagespeed+Firebug进行了一番疯狂的提速优化,速度有了一些改善。又装了Pagespeed的Apache插件来提高HTTP的速度,目前来看,表现良好。

另外,比尔盖子Linux已经完成测试。之前的维护页面已经被“比尔盖子Linux”取代,但由于比尔盖子的电脑挂了,所以最近依然不会更新。

搬迁网站到VPS的过程

写在前面的话

Written at the beginning

众所周知(如果不知道猛击这里),在2011年六月的最后一天,比尔盖子网站全部下线搬迁。

这一次,因为饱受Godaddy主机的折磨,比尔盖子在今年初就狠下心来决定:7月份一定要换个VPS(在今年1月的公告中透露过)
果然不出大家的所料,比尔盖子更换了主机。

比尔盖子为了选择一个价格公道,性能优良的VPS,艰难的百度和谷歌,最终选择了Linode主机。这个主机的机房位于硅谷,是中国连接美国速度最快的机房,而且在中国站长中口碑也是相当的好。

但是,出现了一点小意外,导致了信用卡不慎冻结。最终只能使用一家比较可靠的Linode支付宝代购系统用支付宝买下了Linode。这个代购虽然可靠、方便,但是,它是将广大代购用户当成系统编写者的子账户处理的。因此只能在这个Linode代购系统的简易控制面板中操作,像比尔盖子这种想要更换机房、更换内核的极客来说,实在是没有什么可折腾性。因此,比尔盖子的网站将在2011年7月27日时再度搬迁。

正文

一般来讲,搬迁网站的过程无非就是这样:

1.关闭网站访问
2.FTP下载所有文件到本地(聪明点的人会打包压缩,另一些人就直接FTP下载,效率不知有多底,可悲啊)
3.将Mysql数据库导出到本地
4.上传导出到本地的文件到新主机
5.导入本地的数据库到新主机
6.修改网站的配置文件,以便连接新的数据库
7.修改域名的指向,指向到新主机
8.最后的一点点排除故障工作,比如解决死链接

这样做,对比尔盖子这样有一点规模的网站来是相当不合适。因为本网站的数据量高到4GB,如果要采用以上的方法,就等于一共下载和上传了8GB的数据!而站长只拥有512K的ADSL连入互联网,如果按照以上步骤,48小时不关机连续作业也完成不了!这该如何是好呢?

话说天下无难事,只怕有心人。比尔盖子想到了自己曾经用SSH远程连接到服务器下载文件时,几乎每次都是瞬间完成,下载速度最快达到了8Mb/s。如果利用这伟大的美国网速,那么搬迁就快多了。话说得好听,那到底怎么利用美国充沛的带宽资源呢?首先我觉得应该先压缩我网站的所有数据。我来到了Godaddy的文件管理面版,悲剧的发现最大只能压缩20MB的数据!这该怎么办呢?

盖子突然想到,因为我的两个主机都可以通过SSH进行远程管理,因此这个过程可以在SSH上操作。立即输入

tar -jcvf website.tar.bz2 html

来压缩我Godaddy主机上的HTML目录,我所有的网站程序都在这个目录里,但是我发现,压缩用了相当长的时间,最后居然强行停止!经过查看记录,盖子的这个博客安装了一个缓存插件,而系统在压缩这个插件产生的缓存时用了相当长的时间。后来盖子进入这个目录查看,发现里面已经生成超过1000个文件,难怪压缩都强行中断了。

快快使用rm -r删除这个目录,结果,删除用时6分钟,最后还报错。这个缓存是在是太夸张了吧!最后,盖子又进入Godaddy的文件管理器,删除了几个残余文件,才算万事!再次尝试进行压缩,这回终于成功了。不过很奇怪,我的网站的数据量为4GB,但压缩完之后居然文件只有300多MB,以至于比尔盖子总是觉得一些文件在压缩时被丢掉了。

之后,比尔盖子登录了新的VPS,输入

wget http://biergaizi.con/html.tar.bz2

下载刚打包完的压缩文件,神速,2分钟搞定。然后使用

tar -jxvf html.tar.bz2

来解压缩,命令行飞速划过屏幕,解压缩完成了。接下来的一个难题,就是配置Web+PHP+Mysql服务器了。幸好比尔盖子平时就爱折腾以Fedora为主的Linux,你可以去看看 比尔盖子站长使用Linux的经历,就知道比尔盖子多么极客了。今天,平时折腾得到的经验总算用上了。这个VPS的系统是盖子亲自选的CentOS5.6,就是冲着Yum和Fedora一样才选择的CentOS,而不是Debian。

随着比尔盖子噼里啪啦的敲击yum install,yum update和service httpd restart,一个使用Apache+PHP5.3+Mysql5的Web服务器就这样完工了。
(具体的细节,我忘记了,会在本月的第二次搬家中详细写出来的)

最后安装了PHPMyAdmin来管理数据库,又安装了Zend和Xcache这一全新的服务器缓存插件。

 

随着一行reboot,比尔盖子的全新网站就正式运行了起来!

Copyright © 2022 比尔盖子 博客

Theme by Anders NorenUp ↑