第一次参加QClub的活动

去年也报过一次名,但是最后有事情所以就没有去。这周一收到的邮件,QClub有一个技术沙龙的活动,定在周六,想来自己周六也没有别的什么事情,就报名参加了,看到题目也是我感兴趣的内容。其一是由百度的黄容芳讲的《Web数据交互的艺术》,其二是由豆瓣的刘洪清讲的《分布式数据库BeansDB在豆瓣的应用》。

黄的演讲,如果去掉艺术二字,个人认为还是一个很好的演讲,其讲了Web数据的几种不同实现,其对长连接的分析十分清晰明了,不过黄把“轮询”写成了“轮循”,虽然是个小错误,但我觉得“轮询”解释了此事件的本质,即间隔一段时间轮流(轮)询问(询),而轮循仅能表达轮流循环的意思;关于数据压缩,主要讲到了两种主要的实施手段,一是使用类似YUI Compressor的压缩器主动对需要传输的内容进行“精简”,我觉得称之为“精简”更明确一点。另外一种是使用GZIP来做压缩,对于大型网站为了提高用户体验,加快网页的加载时间,这是两个很好的方法。后面说到的跨浏览器通信,则是我完全没有接触过的内容,主要是想解决当客户在同一台机器上打开不同的浏览器,或是使用同一浏览器同时打开某一页面时,各页面之间内容同步的问题,主要的解决方案是Flash。后面说到了数据在客户端的存储,提到了ie的UserData,Firefox的localStorage以及Flash和HTM5,却没有提Google Gears,百度是不是跟Google有仇?

说到Flash,黄说Flash的覆盖率还不是很高,只有97%,百度能在乎剩下的3%,着实是挺令我惊讶,想中国的大多数网银和几年前的淘宝支付宝都不支持Firefox。不过我倒是很赞赏Apple的作法,宁愿支持html5也不愿意支持FLASH,不论苹果是否只是由商业利益做出的考虑,但是阻止flash来扰乱本来就已经很混乱的web标准,我是很赞同这样的作法的。

另外一位豆瓣的工程师刘讲的内容也吸引了很多人,我自己也被他的话题所吸引。说到分布式key-value数据库,自己早有耳闻,但是我一直不明白也一直不是很清楚这种类型的数据库如何被有效的利用在web2.0的应用中。豆瓣的作法是没有完全将MySQL替换掉,而是将那些结构化的数据依然保留在MySQL中,而将另外一些依据应用场景数量多,对一致性要求不是十分高、许多场景下是一次写入多次读出的数据存储在他们的分布式key-value数据库中。工业界追求第一位的并不是程序的理论上的最优性,而是在应用需求前提之下的性能和成本。key-value分布式数据库不是万能的,但是在一些场景之下,却可以解决应用的许多问题。豆瓣网的现行用户有3000多万,其每天处理的数据我觉得还算是一个不是非常巨大的场景,与twitter和facebook相比,其还要差一到两个层级。随着豆瓣的成长,希望能从他们那里得到更多的经验。

最近很忙,少有更新博客,可以在twitter上联系我。@bbiao

  1. Yunjing
    2010年4月11日 00:26 | #1

    key-value store的东西应该能从Amazon的Dynamo里学到不少东西吧.不过感觉豆瓣对availability的要求应该比Amazon低很多

  2. 2010年4月11日 10:02 | #2

    gears连google自己都放弃了,怨不得百度

    • 2010年4月11日 12:20 | #3

      我比较期待HTML5成为真正标准的那一天。

发表评论

取消
XHTML: 您可以使用这些标签: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">