机房360首页
当前位置:首页 » 业界动态 » Digg与时间赛跑,打造谷歌Reader替代品

Digg与时间赛跑,打造谷歌Reader替代品

来源:机房360 作者:XFF 更新时间:2013/6/24 11:22:46

摘要:前文讲述了Digg Reader的产生并非偶然。然而要打造一款Google Reader的替代品并非易事。甚至Google Reader之父Chris Wetherell也为Digg团队感到担心。此为连载第四篇:所以你们要打造一款阅读器.

  


 

  “我很欣赏他们的抱负,这是一份苦差事。要完成好将面临难以想像的挑战。”Chris Wetherell 说。许多年前,Wetherell 建立了Google Reader——被枪毙掉的产品中最受欢迎且最实用的产品之一。当谈到Digg 团队面临什么时,他摇着头,发出了一声常常的嘆息:“此时此刻,我为他们感到同情和恐惧。”

  


 

  RSS 阅读从技术上来说极度复杂。对于起步者来说,有一大堆的信息要抓取和整合。从博客到如《纽约时报》这类的主流出版物,再到日历订阅和种类繁多的个人服务。Digg 必须获取所有信息,并很快地反馈给你。

  “数据库的之大是一个难以想像的挑战,”Wetherell 解释说,“互联网如此庞大,但它也只是一堆网页的集合。但RSS 阅读数据存储潜在的大小可能几倍于互联网。”举个例子,一个网站可能有很多的订阅源,其中有一些是在搜索问题或标籤时找到的订阅源,所有这些数据都要被收集到Digg 的服务器中。Wetherell 说:“存储所有必要信息并将它们传送至一个世界级的RSS 阅读器中,所花费的代价是巨大的。希望他们在银行里有一些积蓄。”

  下面所说的可能是一种典型的阅读体验。比如说,你想要订阅你的Flickr 中所有标籤为“食物”的照片。那是Digg 从API 调用中抓取的一个特定照片子集。每次你打开Digg Reader,它就要为你载入专属于你的数据。当越来越多的用户参与进来时,这需要非常强大而快速的计算能力。而这只是一个款阅读器要解决的众多问题之一。

  当某位用户加载Digg Reader 时,Digg 的服务器就要访问这位用户订阅的所有订阅源,找到用户上次访问之后加入的文章,然后将它们按逆向时间顺序整合起来。有两种方式来传递这些信息:Digg 等待用户发送载入请求(拉),或不断向他们推送新的文章(推)。后者速度更快,但将给服务器造成更大的负担。(目前,Digg 打算使用前者,最终期望能实现两者的混合使用。)

  与此同时,阅读器要做许多的运算。在它推送文章之前,阅读器必须计算出哪些文章你已经读过,而哪些你还没有读过,并将这个信息展现出来。Digg 希望你对文章採取一些行动(至少是让你能够採取行动),因此它还必须把与每篇文章相关的数据记录下来:你把它分享到Twitter 或Facebook 上了吗?你Digg 它了吗?你是否把它发送到Pocket 或Instapaper 以供日后阅读?如果答案是Yes,它​​就需要通过相关的图标显示这个信息。——这或许没什么好说的,但这些信息是专属于你的,因此对每一位用户、每一篇文章,它都必须一次又一次地进行运算。

  这还只是Digg 团队要在叁个月内解决的问题中最表层的一些,还有许许多多琐碎繁琐的问题等待着他们:数不清的对用户交互方式如何进行处理的小决策。比如,当人们思考如何“简单”移植现有产品时,大部分人从未考虑过的API 缓存。而且所有交互处理都必须在非常短的时间内进行。对于一款RSS 阅读器,它应该做到即时响应。

  “速度快,利弊兼具。”Digg CTO Michael Young 解释说。他阐述的是对前端软件和后台数据的影响。“阅读器载入迅速、及时,这样我们就能第一时间获取到刚发布的文章。”这需要大量的工作,而时间是最关键的问题。“RSS 就很痛苦了。就拿《连线》的RSS 来所说,我必须反复地检查。”(就在这时,Young 开始模仿起计算机访问服务器了)“有新的文章吗?有新的文章吗?有新的文章吗?如果频率很高的话,比如,每15 分鐘进行一次,一些网站就会阻止我的访问了。”更多情况下,每分鐘就要进行一次。

  从根本上说,这是一个残缺的体系。订阅者想要在新文章上线的第一时间就在RSS 阅读器上看到它们。然而,除非发布者採取一种推送更新提示的方式,否则除了通过现阶段每15 分鐘才进行一次缓慢爬取订阅源的形式,Digg 阅读器是不可能知道的。有一些网站几个星期才发布一次,每15 分鐘进行一次的检测就足够了。但一些对于喷涌而出的新闻和服务讯息,如实时交通信息,这样的更新速度就实在太慢了。想像这样一个场景:Digg 在3:00 爬取一次《连线》的订阅,但《连线》在3:01 发出了一篇新文章,而我又恰好在3:14 分载入了Digg Reader 。那么我就无法看到这篇新文章,即使在我载入之前相当一段时间,它已经发布了。

  “想在Google 之外解决这个问题,是让我陷入同情而紧张的思考中而忍不住摇头的巨大挑战之一。”Wetherell 说,“Google Reader 成功的塬因之一是,它背后有世界上最棒的爬取系统做支撑。”

  每个在互联网上发布信息的人都希望他的信息出现在Google 上,因为Google 就是流量的象​​徵,而流量又是金钱的象徵。发布者希望Google 机器人尽可能多地访问他们的网站。但他们不一定希望几十个RSS 阅读器一次又一次地检查他们的系统。太过频繁地访问,他们可能会处罚你,阻止你的机器人。失去了机器人,你也将失去你的读者。

  


 

  当我于五月初拜访Digg 时,白板上写满了待办事项。中间散落了一些如“国安局窃听”(现在看来,很有先见之明)和“Windows Phone 软件”(我问起这个时,他们只是笑笑)的笑话。然而5 月31 日时,大部分的待办事项已经完成,而且团队已经準备好把Digg Reader 从测试服务器转移到Digg.com 了。几乎与此同时,整个网站崩溃了。当Young 意识到迎接所有访问Digg 用户的是503 error 时,他头都大了。天啊!

  责任编辑:XFF

本文地址:http://www.jifang360.com/news/2013624/n042149762.html 网友评论: 阅读次数:
版权声明:凡本站原创文章,未经授权,禁止转载,否则追究法律责任。
相关评论
正在加载评论列表...
评论表单加载中...
  • 我要分享
推荐图片