git+blog=Amazing
静静躺在本地硬盘的纯文本文件便是一篇篇博文,还可以用git进行版本控制,博文也开始有版本了,于是不用担心任何意外,另有github的服务器撑腰,真是amazing。
github加速!
github虽然服务器不错,但毕竟与大陆隔了一个太平洋,延迟还是不能令人满意,加载速度上还是比不上国内的服务器,于是萌生了给它加速的想法。国内的加速服务很多,但都要备案,害怕被抄水表所以看中了v2ex家的orca.io
,不用备案且有30GB free流量支持,但是据测试他们家是没大陆节点的,最近的日本节点速度还是不能令人满意,于是想起了SAE这个玩具。SAE自带的CDN秒杀国内很多CDN服务商,而且机房配置也应该是国内最好的,所以就利用MemCache服务来加速。
MemCache
MemCache是将数据保存在内存来达到很高的I/O读取,内存的读取速度是比硬盘甚至SSD还要快的,然后配上SAE的CDN,加载延迟应该能让人满意。
加速思路
在处理请求时根据url向MemCache取内容,如果MemCache没有该url的内容,则用urllib2向github服务器get内容,返回给客户端,并存入MemCache。然后用Cron建立一个定时循环任务,间隔24小时遍历MemCache中所有key,将value的hash与github服务器上页面的内容hash对比,如果不一样则页面改动,用github页面内容覆盖MemCache内容,达到更新缓存的目的。
结果
折腾了一晚上,用web.py实现了以上思路,现在这篇文章正躺着SAE的内存中待命呢~
用chrome(已清空浏览器缓存)测试加载速度在1s以内~: