Micolog博客主题终极优化篇

之前google app的一些动作让我们有些失望,他们将CPU的使用率和每日的输出流量都减少了,CPU的影响倒不是很大,因为博客使用了缓存,其中每日输出流量从2G改为1G最使人恼火。当然对大多数博客已经够用了,但我们还要未雨绸缪,做些优化来减少或平摊一下流量。

使用绝对路径,路径中注意大小写(使用python的缘故)。目的是减少重复加载文件。减少宽带输出量,并且也对网站有加速的作用。调用js文件较多的网站尤为重要。

1.将站内所有的图片都用绝对路径,包括css中的。

在style.css中的所有相对路径替换成绝对路径 如

#container #wrapper {
    width: 900px;
    float: left;
    overflow: hidden;
    background: #d6ded4 url(http://hou-kai.appspot.com/themes/Devart/images/sidebar-bg.gif) repeat-y top right;
}

2.改javascript函数为文件调用形式。并用绝对路径。

其中公用的部分建议用官方提供的链接,比如jquey库。这样做的好处是大多数网站都在使用这样通用库,如果访问到您的博客就不用重新加载了。如

<script type="text/javascript" language="javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>

把其他的改为绝对路径调用,如

QQ表情的js
<script type="text/javascript" src="http://hou-kai.appspot.com/themes/Devart/smile.js">

其他的同样,如果js中有中文字符,需将js文件以utf-8格式保存。比如下面commnent.js是利用ajexa提交评论,但函数内有中文提示。还有taotao.js也是utf-8格式。

<script src="http://hou-kai.appspot.com/themes/Devart/cookie.js" type="text/javascript"></script> 
<SCRIPT src="http://hou-kai.appspot.com/themes/Devart/commenttips.js" type="text/javascript"></SCRIPT>
<SCRIPT src="http://hou-kai.appspot.com/themes/Devart/comment.js" type="text/javascript"></SCRIPT>
<script type="text/javascript">var taotao_qq=63956135; var taotao_num=5;var taotao_type=0;</script><script type="text/javascript" charset="utf-8" src="http://hou-kai.appspot.com/themes/Devart/taotao.js"></script>

经过这步,我明显感觉用ajexa提交留言的速度快了。还可以对js进行合并,并用YUI Compressor 工具对 JavaScript 和 CSS 代码进行压缩(非必要)。

3.绝对路径中用yourID.appspot.com二级域名。

为什么上面我用http://hou-kai.appspot.com/,而不用http://www.houkai.com/呢,因为我们绑定的域名只是google在ghs服务器上做了一个反向代理,最终还是调用前者的内容,这也是为什么*.appspot.com支持https,而绑定的域名不支持,是因为反向代理没有提供这样的功能。

前面写过一篇博文,来悼念阵亡的ip,现在用来绑定域名的ip已经是聊聊无几,我一直在想ip用完了怎么办,难道我们的博客就关门大吉,或者导出数据转移到Wordpress。现在Micolog程序还有缺陷,如果转移到Wordpress感觉数据也会有所丢失。而且,我还是比较喜欢python的。有没有其他办法呢。

请大家先看看 http://w92.houkai.com。这是我用国内ip做了一个反向代理,很简单,就是用w92.houkai.com来代理hou-kai.appspot.com。这台机子的ip是个公网ip,我在该机子用phpnow搭建了个php环境,本来想用来做个掘客,但一直太懒闲置着。如果我在Micolog后台设置域名为w92.houkai.com,是不是和google提供的ghs效果一样

上面用appspot.com的绝对路径的目的就是要绕过反向代理直接调用,这样就可以减少对反向代理的压力。毕竟用的ghs都放在国外的某个主机,appspot的速度还是很快的(我猜想它有流量均衡机制)!

4.分摊流量。

因为google app 对每个项目都有流量和cpu方面的限制,但每个用户可以最多申请10个项目。所以我们可以用两个或者三个项目来分散流量,你可以观察,凡是大型网站一般主题发面的图片都会存放在另一个二级域名下。这样可以减少对主站的压力。

那么如果分摊流量呢。一般用Micolog的博主也都在用大菠萝相册来做图床。您可以将主题包放在大菠萝程序内。修改一下app.yaml来缩短路径(非必要),把Micolog主题中的hou-kai.appspot.com换成大菠萝相册的二级域名路径。

还有一种最最简单的方法,就是再开一个项目,比如我再新建一个houkaiblog.appspot.com,把Micolog程序中的hou-kai.appspot.com主题中绝对路径全部替换成houkaiblog.appspot.com。将同一程序分别上传到两个项目传就ok了!这样www.houkai.com 主题中css、js、图片等文件调用的就是houkaiblog.appspot.com的流量,其他调用的是自己hou-kai.appspot的流量。

使用绝对路径要注意的地方:在本地测试的时候,如果修改那个css或js的调用文件 一定要在html文件中将该文件的路径改成相对路径才能看到效果,上传前在改回绝对路径!虽然麻烦,但修改调用文件几率还是很小的!

本文永久链接  http://www.houkai.com/2009/09/18/micolog-optimization.html
转载注明来自  HOUKAI.COM 分享家:Addthis中国

如何给网站(博客)加入迅雷下载超链接»

«什么是反向代理,如何利用反向代理提高网站性能




最新文章

您可能会喜欢

本文共有44评论

  1. 厉害啊,花了很长时间写的吧。

  2. 我博客上次有一天发飙 猛增至一万四千IP 就是这样一天 也才用了800M流量

  3. Google App Engine,好玄妙的东西

  4. 请问一下,为什么要用绝对路径呀?只是为了反向代理吗?

  5. 啊,我基本上都是相对路径。。

  6. houkai的文章越来越棒了

  7. 火狐下提交留言有问题,ajax返回的结果跑到右上去了

  8. 我一个月流量也用不了2G……

  9. 好文章,支持下。
    那个你知道http://edikud.appspot.com/2009/08/3/micolog-theme.html这个里的最新评论列表怎么实现带头像的么。

  10. 都是一些不错的方法,很多不光可以用在Micolog上

  11. @云在天边
    呵呵 是的!写完快12点了。
    @zhukun
    我的目的是打造百万级的吞吐量。
    @Louis Han
    是个好东西,见此文 也可以把部分wp上的压力转移到GAE上。
    @万戈
    文章中有提:目的是减少重复加载文件。减少宽带输出量,并且也有网站加速的作用。调用js文件较多的网站尤为重要。
    @Qing
    谢谢,我试试,你用的chrome4吗?
    @kangzj
    未雨绸缪了, 。面包会有的,流量也会有的!
    @nico
    这个很容易,和留言去的调用差不多,你可以看看他的html源码和你主题下面comment.html源码很容易直接加到你首页。不建议在首页显示头像,因为这些头像都是调用国外网站的图片,速度不是很快。首页压力一般是最大的!
    @Hobo
    你真有眼力,基本都是通用的方法,只是在具体环境(Micolog)下说明而已!

  12. 其中公用的部分建议用官方提供的链接,比如jquey库。这样做的好处是大多数网站都在使用这样通用库,如果访问到您的博客就不用重新加载了。
    即使是需要加载,也不会用到博客主机的流量吧?

  13. @90后的贼
    ...................,你安心用wp吧。做好您的内容!像这样的文章请直接跳过!
    @酷口
    理解正确!

  14. 哎,我的网站咋在IE下错位了,怎么办呢?用开发人员工具手动换一下文本模式为IE8模式才正常啊

  15. 哦……貌似是降流量的方法优化…… 很好啦

  16. 我博客一直没打补丁,micolog的下个版本到底什么时候才能出来呀。

  17. 我的全新主题正式上线了 ,但还有些特效没有实现。。。

  18. ……1G还不行啊……你win7有下载地址了没,我想下载个。偷偷M我

  19. @edikud
    已经很炫 很酷了 还有什么特效说说看!
    @蓝冰
    呵呵 1G还是很够了。
    MSDN 正式公布简体中文版Windows 7
    Windows 7 Ultimte (x86) - DVD (Chinese-Simplified)
    下载地址:http://www.ich8.com/download/view-software-586.html
    Windows 7 Professional (x86) - DVD (Chinese-Simplified)
    下载地址:http://www.ich8.com/download/view-software-587.html
    Windows 7 Enterprise (x86) - DVD (Chinese-Simplified)
    下载地址:http://www.ich8.com/download/view-software-588.html

  20. 用的着吗?

  21. [已经很炫 很酷了 还有什么特效说说看!]

    像这些
    http://www.cssrain.cn/demo/ahover/demo.html

    http://www.cssrain.cn/demo/skypebuttons/SkypeButton.html

    http://www.cssrain.cn/demo/jquery-sliding-menu/default.html

    http://www.comparenetworks.com/developers/jqueryplugins/jbreadcrumb.html

    http://www.cssrain.cn/demo/Bubble/coda-bubble.html



  22. @edikud
    真不错 我也想加上了 反正现在速度还快 再加几个js无妨

  23. @云在天边
    你的网站 2天了都打不开呀

  24. @houkai
    可以打开啊,怎么会呢?不过就是在IE下错位的厉害啊,都挤到左边来了

  25. @houkai
    firefox5.3啊,有点问题,回复后的内容偏位

  26. @Qing
    我试试 这里的firefox是3.5.3

  27. @Qing
    搞定,还是ie的兼容性问题!!在ie.css加了一行,在style.css删除了一行 就可以了 谢谢提醒!

  28. 不错!
    这个评论处还有这么多编辑选项啊?!

  29. Hug怎么评论网址处不能使用“-”?我的网址at-blog中间的-过滤掉了

  30. @麦子
    哦 考虑了_ 没有考虑到-  下次上传前加上!!Victory

  31. 还是没太看懂~~Shy

  32. 这个主题怎么变呀  我想变个主题

  33. 你好。首先谢谢你的主题。
    我是个菜鸟。正在学用GAE。在GAE装了MICOLOG。。
    重点:我很喜欢一个WORDpress的主题。
    白色版。纯CSS 简约大气(当然只是个人看法)
    这个模板详细请看:http://www.prower.cn/work/1655
    我想把这个板板移植到 MICOLOG 参考了网上别人的方法。
    无奈水平有限没成功。希望B主能详解一下好何移植或者帮我移植。谢谢。
    我的EMAIL:xamoer@gMAIL.com 各位看官如果有会的也请指点或帮忙一下。不胜感谢。

  34. @月苍衣
    Micolog主题(theme)合集 后面部分有教程链接 你可以试试!

  35. houkai能不能把你的修改后的micolog版本放出来,折腾起来实在是费功夫。

  36. @romotc
    这篇文章对有现在没有ip的日子,已经不起什么作用了!
    不放出来的原因是 我现在没时间弄 里面好多东西都不完善。代码vvonder's blog比较好。
    至于模版,为了最求个性化自己瞎弄。模版中加的新功能我按步骤都写出来了,很容易添加,写出来而不是简单的放出来也是为了方便能给不同模版加功能!
    最新css、html、js部分在我的源码里都能找到,看了博文直接去copy也不错。

  37. @houkai
    貌似现在又出现可用I.P.了,我前几天无意就发现了一个,不过你就不用了

  38. 不错,学习ing...

  39. 学习了,我现在明白了,我绑定域名不成功的原因了。。。
    谢谢

  40. 我修改了一下base.htm,想在page里加入if语句,来判断当前page是不是等于某个我添加的page,然后调用不同的base.htm。
    请问这个page的判断是if什么?  if page.is_new? if page.title.is_new? if page='new'? if page.title='new'?
    还是其他的?我没有找到page名字的那个字段,所以来请教。谢谢

  41. 平均每个月还是有30G的流量呢,一般的博客怎么的都够用了吧?

 

现在评论本文

3+6