• 2007-12-20

    实战web2.0技术篇-豆瓣技术分析

    版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
    http://huwenshu.blogbus.com/logs/12375354.html

    国内网站的技术体系比较难找,只能自己搜索后整合

    阿北布道Feedsky技术交流会上谈到

  • KISS。阿北在豆瓣之前任一公司CTO,负责开发企业 软件。受惯性思维的影响,在开发豆瓣之初设计的系统架构比较复杂,经过探索之后采用了 UI -> Data Object -> DB 的三层结构。事实证明,简单,不仅是 UI 的简洁,也包括系统架构的简单化,是豆瓣开发成功的关键所在。 快速开发。豆瓣网站采用了敏捷开发的模式,这是一个快速开发、快速变化的体系,平均每两天就有新的功能出现。
  • 永远 Beta。快速上线、不断完善的轻型开发模式被视为 Web 2.0 的典型开发模式,豆瓣在核心功能开发成功之后始终处于不断完善之中。这种模式虽然难免把问题暴露在用户直视中,但在用户的直接参与下的修改完善比“闭门修炼”效果更好。
  • 注重用户体验。众口难调,不可能覆盖到全部用户的需求,所以只要照顾到多数用户就好。通过调研及悉心体验获知多数用户需要什么,如果搞错了及时调整
  • 在具体开发上

    • 选择 Python 开发的原因,是效率、效率、效率。
    • 重点关注、率先实现核心功能,未及实现的逐渐完善。
    • 网站应用结构要扁平,如果系统多人开发时应纵向切割。
    • 程序员不要有惯性思维,如对数据库不熟悉就采取逃避态度。
    • 在用户需求的理解上,程序员易自我中心,从程序实现思路出发。
    • 乐此不疲地热爱 Coding 对于程序人员极其重要
    • 尽可能使用开源已实现的功能代码,比如使用Lighttpd

    精巧的div+css

    1、采用div+css的页面技术,这个网页设计师最拿手,http://w3cn.org/一个很好的资料站。

    2、通过在某块重要内容下加色块底色来突出,豆瓣使用的底色有浅粉,浅蓝,和白色底结合起来,既清爽又能引人注目,不过在某些显示屏下效果不是很明显。

    3、豆瓣的主题是书籍、音乐、电影和用户(小组),每个主题都采用缩略图,用户(小组)的缩略图小一些。书籍、音乐、电影的图片一般都用封面或海报,都比较好看,也必须要大一些,后者因为可以上传,设计成更小的图,能使得图片显得好看。

    4、除上面的四种主题图片以外,豆瓣对其他图片及其吝啬,几乎没有。用户发评论,发帖都不可发图片。这样好处是非常明显的,一个能够使得用户专注在文字上,不会出现与网站核心无关的图片。另外,使得网站访问速度非常快。

    5、不管什么页面都是采用相同布局。布局采用左内容右目录和上中下方式。最上面为纯文字的栏目导航;中间为2列方式,左边为页面核心内容,右面为辅助和相关功能和信息;最下面是站务导航。

    6、样式表使用上豆瓣也匠心独运,链接的选都是深蓝反白,点上是橙色,删除是深红反白,书籍/音乐/电影使用深红反白,功能说明和站点书签 icon是绿色,推荐的星星是红色,剩下的就是永恒不变的黑色了。整个颜色围绕蓝色和红色色系以及绿色展开。这种样式风格和logo能符合在一起,非常的协调。

    7、button使用的很少,其实对于web来说,button和链接很难严格区分,但从用户的习惯角度来说,该用button的地方还得用!

    8、豆瓣的页面长度,每个页面非常短,一般2页,不超过3页。太长的页面会使得用户失去看下去的耐心,一般看前几页的内容就换节目了,没必要把其余的东西load出来,所以2-3页是最好的选择。但是页面短又会导致大部分内容都无用化沉积,所以还要建议一种轮换上场的制度,在实力相当的前提下,让所有内容都有展现的机会。

    9、链接全部不在新窗口里打开,这个要分开看,不是全部的链接都适合直接跳转浏览的,比如从目录页到主题页适合打开新窗口,而主题页内部的浏览适合直接跳转。

    后面在别人介绍中又看到豆瓣硬件有 :

    一台Web服务器运行Lighttpd,每天处理2500万个request,峰值每秒处理1000个request;
         一台应用服务器运行Python,每天处理500万PV; 豆瓣使用的Python性能要比Ruby好很多,但即便如此,在同样硬件条件下,用Python支撑到500万以上,也是非常困难的,可以想像的是大量运用了页面的局部缓存,以及对程序和框架的优化达到了极致,这一点,不得不佩服豆瓣的技术人员的性能优化水准和所下的功夫,但可以简单的通过增加硬件来解决这个问题
          数据库服务器运行MySQL,负载情况没有介绍。


    收藏到:Del.icio.us




发表评论

您将收到博主的回复邮件
记住我