网站技术分析报告之——去哪儿(上)


2010-5-3 09:49 Javascript&jQuery,seo,互联网 25个评论994

写在前 面

这篇文章很早之前就已经写好了,但一直没发,因为这段时间一直忙着改造Wordpress,我准备抽时间再把这次改造Wordpress的经过写出 来,文章的标题暂定叫《36小时急行军——全面改造Wordpress》,敬请期待。
24号参加Qcon 大会回来后,去哪儿的CTO吴永强先生在我的博客上留言问我去哪儿的技术报告什么时候出来,这让我压力倍增,我倒不是怕说了他们的坏话,而是怕我 分析得不好,因为我毕竟看不到去哪儿的底层技术,从大家都能看到的来分析去哪儿会流于表面,希望不会让吴永强先生太失望。

前言

自从上一篇“网站技术分析报告之——开心网(kaixin.com)”发布之后,得到了多家网站 的转载,包括中国站长站,it.com.cn,博客园等知名网站。同时也引来一些朋友的拍砖,在此我作一个声明,本人做这个技术分析报告的系列,仅仅是个 人兴趣爱好,从个人观点出发,本着我不严谨爱调侃的精神,自娱自乐一番。这些文章并非科学学术著作,自然免不了有失偏颇,也不全面,仅供各位参考。

好了,废话说了这么多,进入主题吧,上次我们说完开心网,这次我们再找一家知名的网站去哪儿,官方网址:www.qunar.com,去哪儿可以说是垂直搜索的一匹黑马,当年据说各大旅行代理网站以及航空公司要封杀去哪儿,现在,我估计得争着和人家合作了。

第一次对去哪儿的源码感兴趣的是在一次我需要航班信息的时候,那段时间我对去哪儿的代码有过一些时间的分析,并且成功地抓取去哪儿的航班和酒店数 据,仅作学习之用,请去哪儿不要找我了,呵呵。

我想这次分析要稍为严谨一丁点儿,要不然会有较真的人要骂我。我准备从代码质量、Javascript、CSS、url及网址结构、广告、图片等多 个方面进行分析。

架构试 探

虽然只是分析了前台的代码,但所谓管中窥豹可见一斑,根据我以前对qunar的代码分析,仅仅从这些前台的代码,我们也可以看到系统结构的一些端倪 的。去哪儿整个网站的重点是在搜索,我想他们是有一个爬虫以及和各大航空公司/旅游代理网站的接口在后台来做数据的采集,这个是重点。然后对采集回来的数据进行分析之后,定时生成JSON静态数据,前台调用采用Ajax的模式,以提高响应速度。我觉得去哪儿这种方式非常好,因为数据都是定时更新的,把每个 城市的数据都生成静态的json,特别是一些不常更新的数据,比如航空公司,酒店,航班信息等,有利于提高响应速度和降低服务器的压力。数据和实现分离也 很彻底,自己的网站通过WebAPI读取,有利于产品化,以及方便与第三方合作,实现公司灵活快速地根据实际情况调整产品。

去哪儿

我自己估计的 Qunar大体架构

这样做同时也有缺点,因为你的数据非常的干净,别人要取就很容易了,反正我是取过去哪儿很干净的数据,干净而透明,呵呵。可能是去哪儿觉得这些数据 都是比较实时的,你就算拿到这些数据也没有用。但是我觉得尽管如此,还是应该在服务器加一些限制,对请求数量进行限制,或者加一些别的限制,这样有利于防 止机器请求,提高服务器的可用率。

广告没有,下集更精彩,敬请期待明天的下集,不要走开V!@#$%^&*()_

无觅相关文章插件,快速提升流量

嗯,或者你也可以收听我的微博,腾讯微博(主要用这个,其他的看我的个人介绍)

我写博客常常出现错别字,常常错得还很离谱,有时候我自己看了第二遍都骂我自个儿,但我又不习惯重复审查,纠结啊...各位看到啥错别字或者不明白的地方,请给我留言指出来,感谢感谢。

  

  • 25个评论在 "网站技术分析报告之——去哪儿(上)"

  • 如此饭饭
    2011-7-7 11:39
    回复TA

    这样做同时也有缺点,因为你的数据非常的干净,别人要取就很容易了,反正我是取过去哪儿很干净的数据,干净而透明
    ——————————-
    不是吧,楼主这么厉害?能抓到干净而透明的数据?
    我这边看qunar明显混淆了数据,连html源码也是乱七八糟,要分析和取出是比较困难的。

  • tocer
    2010-8-31 17:04
    回复TA

    “把每个 城市的数据都生成静态的json,特别是一些不常更新的数据,比如航空公司,酒店,航班信息等”

    不是很理解,难道是以文件的形式保存这些数据,不用数据库?

    • 涂雅
      2010-8-31 17:08
      回复TA

      没错,是以文件的形式,数据库会有,但是给用户读取的是json文件,这样效率会比较高,因为不需要查询,对于这数据可以做缓存。酒店和城市这些信息修改的频率很低,例如以酒店的id命名json,取的时候直接取url/hotelid.json即可。

      • tocer
        2010-8-31 17:31
        回复TA

        谢谢。

      • yl
        2010-9-29 09:42
        回复TA

        您好 我想问一下 比如对对航班的查询 它不是 一次性交互拿到数据的 是经过多次交互才拿到数据 拼凑一起的 为什么这样做 它是如何根据URL里面的参数 来拿到 数据然后拼凑在一起的那??

        • 涂雅
          2010-9-29 13:39
          回复TA

          不是所有数据都是静态的,我文中有谈到:“把每个 城市的数据都生成静态的json,特别是一些不常更新的数据,比如航空公司,酒店,航班信息等,有利于提高响应速度和降低服务器的压力”

          • yl
            2010-9-29 17:14

            非常感谢您 还有些问题想问您 不知能否加下QQ ******** 非常感谢

          • 涂雅
            2010-9-30 09:06

            呵呵,注意保护自己的隐私,我已经把你的QQ号用*代替了。
            有问题可以给我留言啊,也可以在微博上收听我,或者给我发邮件也可以,QQ少用滴

          • yl
            2010-10-1 22:27

            非常感谢

  • 鸟人网
    2010-5-19 12:17
    回复TA

    哎呀,,我来你的博客找原文作者的。晕。

    你的这篇文章,原创作者是谁???难道是你写的?我感觉不是你。另外,我不会写你的地址,只会写原创作者的地址。抱歉。

    • 涂雅
      2010-5-19 13:31
      回复TA

      I服了You,兄台如何判断原创作者不是我?本博从来不转载别人文章,在我的印象中,好像我的300篇文章都是我一个字一个字码出来的,虽然极少部分会在文章中引用一些文章的一部分。
      呵呵,阁下凭什么认定原文不是我写的?此文是我在《网站技术分析报告——开心网》之后的姊妹篇,你不是会故意找茬吧

    • 鸟人网
      2010-5-19 13:44
      回复TA

      ok,只要确认你是原创,我无条件支持你,并添加引用链接!

      为我的主观臆断,致歉!

    • 涂雅
      2010-5-19 14:02
      回复TA

      呵呵,没事没事,我倒是很想知道,为什么你认为我不是原创者呢,好奇ing

  • 鸟人网
    2010-5-19 12:06
    回复TA

    现在,转载博客。引用来源怎么加,如何加,

    我看到本站很多文章也是没有加引用来源。。。。

    • 涂雅
      2010-5-19 12:12
      回复TA

      呵呵,其实很简单,加上来源并添加链接即可,例如:
      原文链接:http://iove.net/1891/
      哈哈,你的涂鸦写错了,是涂雅,注意要带链接哦,这对你的网站没有任何影响,我只是不想被搜索引擎惩罚而已,也想有用户看了这篇文章觉得不错,然后来我的网站看一看,仅此而已,感谢。

  • Jashion
    2010-5-6 08:57
    回复TA

    我是要评论的话才点进来

  • Jashion
    2010-5-6 08:56
    回复TA

    确实,全文输出很重要!很多人都不愿意点进网站

    • 涂雅
      2010-5-6 09:01
      回复TA

      呵呵,现在已经提供全文输出,不过主要是考虑有人转载不加版权,特别是一些大网站

  • Auston Jar
    2010-5-4 20:46
    回复TA

    全文输出rss很有必要的…
    可能吧 有写一篇文章

    • 涂雅
      2010-5-4 22:26
      回复TA

      你的建议很合理,应该考虑以用户为中心

  • anyLiv
    2010-5-3 13:27
    回复TA

    你的 RSS 为什麽不全文输出呢?流量问题?

    • 涂雅
      2010-5-3 13:35
      回复TA

      为什么要全文输出呢?很少见到rss全文输出的吧,没有这个必要啊,呵呵,告诉我,有什么好处

  • 上尉
    2010-5-3 11:14
    回复TA

    拜读了,你服务器太差了。总是自杀。

    • 涂雅
      2010-5-3 11:22
      回复TA

      是啊,我极度郁闷,这段时间访问量不错,就是服务器老出问题,五一就在家干这个了,真想换个VPS,哈哈

  • 评论敬告那些为做SEO而评论的朋友,本博不欢迎此类评论,请不要利用本博做关键字,一律封杀。

    绝不跨省追捕
    不会发垃圾邮件
    增加你的流量