• Email:
  • Feeds

  • 构建可扩展的微博架构(qcon beijing 2010演讲)

    在使用Twitter几年的时间里面,经常思考微博如何更好的实现,恰好最近几个月也参与了相关工作,大部分都是工程实践,总结实践会促生更具实际价值的理论。因此在QCon Beijing 2010这次演讲参考了不少网友的意见后选择了《构建可扩展微博架构》的题目。
    由于在决定选题时知道来自Twitter总部有30万followers的@nk也会讲一个类似的题目,心中当时有点忐忑,最大的顾虑就是要讲的领域更他重叠,如果他讲得更深入,我就没必要班门弄斧了。后来考虑到以下几个原因还是决定继续

    • Twitter架构是单IDC设计,从它递增的tweet id就可以看出,后来当面向@nk提问也得到了证实。
    • 中美网络环境差异,单IDC和多IDC有很多设计上的不同
    • 大部分参会人员未必能对英文演讲有深入理解及感悟,中文的演讲可以讲一些细节解释更透彻。
    • Twitter对故障的容忍度大,国内公司对服务故障通常更敏感。因此国内架构师会考虑设计方案尽量简单可靠,服务需要更稳定。国外开发团队更倾向追求在工作中应用技术创新,因此会导致架构设计理念的不少差异。

    演讲的slide如下,登录slideshare之后可以下载。

    这里再补充在qcon演讲未来得及考虑成熟的一个方面,用户规模影响设计,具体是指用户数每上一个数量级,许多设计需要重新考虑。

    10万用户级别

    • 单服务器,前端、后端、cache、db在一起。

    百万级

    • db和cache单独部署服务器,db或按业务进行拆分(sharding)
    • cache或使用一致性hash扩展。
    • 前端后端还是在一起,但是根据业务拆分,每个业务可分配不同数量的服务器

    千万级

    • 开始重视架构设计,有专门技术架构师
    • 需跨机房部署,前端在远程增加反向代理加速,数据库在异地机房使用slave数据库副本
    • 后端拆分出来,系统内部需要远程调用,内部需远程调用协议。

    亿级

    • 架构更细分,或增加数据架构师,cache架构师,分布式架构师
    • 数据库sharding碰到烦恼,开始考虑分布式数据服务
    • 数据访问需要根据业务特点细分。
    • 开发、运维、测量、调优具备有自己的专有工具。
    • 所有服务需要地理多机房分布,具备IDC容灾设计。
    • 服务可降级

    上面的数字仅供理解“用户规模影响设计”,数字本身并无具体指导价值。

    另外在slide中也提到了,目前新浪微博团队急需人才,对上面相关技术领域感兴趣的架构师及各层次开发人员(熟悉PHP,Java, C或数据架构任意一种)可随时跟我联系,工作地点为北京,联系方式见博客首页。

    40 Comments  »

    1. ochef says:

      非常好的技术分享。
      文中日期应该是笔误啊“QCon Beijing 21010年”,太超前了,:)

    2. Vincent says:

      这些演讲都没有视频或者录音么
      我觉得主办方要是弄一下就好了

    3. medcl says:

      多谢分享,学习~

    4. jarfield says:

      多谢楼主分享!

      PPT的第11页可能是个笔误:
      查看:所有关注对象Inbox(重) => 查看:所有关注对象Outbox(重)

    5. Tim says:

      @jarfield 你说得对。

    6. brightman says:

      问几个问题:
      1.新浪微博是push方式?采用MQ去push?
      2.删掉关注对象后,也会删除push的内容?
      3.push策略?有选择的push?先push热点?名人?活跃用户?
      4.twitter是push or pull?
      3ks

    7. jacky says:

      这周六,在杭州有个阿里巴巴的的关于架构方面的技术交流会,我去听听,如果有收获,也在这里留个言啊。

    8. 天朝子民 says:

      这个有视频地址吗,想边听边看。。。。。

    9. Alex Cai says:

      我们的模块设计上要去状态,我们任意一个单元可以支持任意节点。

      去中心化,这个容易理解,不过去状态就不理解了,感觉貌似跟去中心差不多,可以帮忙解释一下吗?thx~

    10. Tjozztlq says:

      I’d like to withdraw $100, please 12-14 teen models 0417

    11. Ckfhxrrl says:

      I’ve been made redundant max4 teen bbs bptoj

    12. Tfyzgqgz says:

      Could you ask him to call me? imageboard jp preteen >:-(

    13. eltzgujnzboh, Get tadalafil, sWOxTFQ, [url=http://www.asca2010.com/schedule.html]Generic tadalafil[/url], fvhOWPO, http://www.asca2010.com/schedule.html Tadalafil tablets, IFKptdT.

    14. wangyao says:

      ppt第22页,get和set写反了。

    15. Itqdjrio says:

      No, I’m not particularly sporty lolita angels art photography Great girl! Brunette, big tits, not very tall, beautiful – it reminds me of my old girlfriend. Awesome vid! Will be one of my favorites for a long time ;) Whats her name?

    16. Skwfvuku says:

      A packet of envelopes lol cp pic nude Krystal Summers is a porn star. She had a nerd as her husband on please fuck my wife. She has a website. BUT SHE IS HOT

    17. Qteslagi says:

      I’d like to send this to teen model lolita girl I’m pretty sure that’s Nadia Styles. She got fake tits a long time ago, so this video must be pretty old.

    18. Srhoxuoj says:

      I’d like to send this parcel to top lolita nudism sites
      I enjoy seeing these average looking older girls getting fucked fucked and sucking cock. I bet she enjoys all the attention from these three guys. Shows you can get good hot sex from any girl with a horny attitude. I’d give her my spunk load whenever she wanted.

    19. Zbkbzzub says:

      A First Class stamp gonzomovies
      ray j is a douche.
      tnaflix
      hooolyyyyy shit !
      pornorama
      i wndr if she has her lips tattooed on… lol
      hardsextube
      Shes definatly a barbie doll wrapped in plastic taking a cock thats fantastic!!! come on barbie lets go party!!!
      freesexvideo
      matt damon does a horrible russian accent

    RSS feed for comments on this post, TrackBack URI

    Leave a Comment