《腾讯微信架构(全文 PPT)》.pdfVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《腾讯微信架构(全文 PPT)》.pdf

腾讯微信技术总监周颢:一亿用户增长背 后的架构秘密 2012-05-15 07:56 来源:CSDN 专稿 作者:付江 [CSDN.NET专稿 付江/文] 微信——腾讯战略级产品,创造移动互联网增速记录, 10 个月5000 万手机用户,433 天之内完成用户数从零到一亿的增长过程,千万级 用户同时在线,摇一 摇每天次数过亿...在技术架构上,微信是如何做到的?日 前,在腾讯大讲堂在中山大学校园宣讲活动上,腾讯广研助理总经理、微信技术 总监周颢在两小时的演 讲中揭开了微信背后的秘密。 周颢,2001 年毕业于华南理工大学,计算机专业硕士。2005 年加入腾讯广州研发 部,历任QQ 邮箱架构师,广研技术总监,T4 技术专家,微信中心助理总经理。 (腾讯广研助理总经理、微信技术总监 周颢 CSDN 配图) 周颢把微信的成功归结于腾讯式的 “三位一体”策略:即产品精准、项目敏捷、 技术支撑。微信的成功是在三个方面的结合比较好,能够超出绝大多数同行或对 手,使得微信走到比较前的位置。所谓产品精准,通俗的讲就是在恰当的时机做 了恰当的事,推出了重量级功能,在合适的时间以最符合大家需求的方式推出去。 他认为在整个微信的成功中,产品精准占了很大一部分权重。 敏捷是一种态度 敏捷就是试错 微信研发团队里鼓励一种试错的信仰:他们坚信,在互联网开发里,如果能够有 一个团队在更短的时间内尝试了更多机会(并能改进过来),就能有(更多的)机会 胜出。敏捷是一种态度,在软件开发过程中,项目管理者都会非常忌讳 “变更” 这个词,但是在微信的项目运作中是不可以的。因为微信必须要容忍说哪怕在发 布前的十分钟,也要允许他变更。这是非常大的挑战,因为打破了所有传统项目 开发的常识。所有人都说不可能做到的,但微信做到了。研发团队所做的一切都 是要给产品决策者有最大的自由度,而这个决策正是微信能够胜出的关键。 海量系统上的敏捷 无异于悬崖边的跳舞 敏捷有很多困境,如果做一个单机版程序,是可以做到很敏捷的,但是腾讯正在 运作的是一个海量系统,有千万级用户同时在线,在一个单 独的功能上每天有百 亿级的访问,同时还要保证99.95%的可用性。在海量系统上应对项目开发会有很 严谨的规范,都说要尽可能少的变化,因为 90%-95%的错误都是在变更中产生的, 如果系统一直不变更会获得非常高的稳定度,但是微信就是要在悬崖边跳舞。微 信的研发团队要做一些事情,让敏捷开发变得更简单。 如何做到这一切?周颢认为,首先,必须建立起一种狂热的技术信念,就是一定 是可以做到的。然后,需要用一些稳固的技术(理念)来支撑,例如大系统小做、 让一切可扩展、必须有基础组件、轻松上线(灰度、灰度、再灰度;精细监控;迅 速响应)...等等来支撑。 四大法器:大系统小做、让一切可扩展、要有基础组件、轻松上线 • 大系统小做:当设计庞大系统的时候,应该尽量分割成更小的颗粒, 使得项目之间的影响是最小的。 • 一切可扩展:在高稳定度、高性能的系统中间,为了稳定性能把它设 计成不变化的系统,但为了支持敏捷需要让一切的东西都要变得可以 扩展。 • 必须建立基础组件:要解决复杂问题的时候,需要将已有的经验固化 下来,固化下来的东西会成为系统中的一部分。 • 轻松上线:当做了变化并把它从开发环境中部署到现有的运营环境中 去,在这个过程中, “灰度”这个词非常关键,就是在黑和白之间的 选择,必须要变成一种小规模尝试,再逐步扩展到海量过程中的一个 问题。 大系统小做——仅仅把模块变得更为清晰,这在海量系统设计开发中是不够的, 还需要在物理环境上进行分离部署,出现问题的时候可以快速发现,并且在最快 的情况下解决掉。 大系统小做 混搭模式 将不同的应用逻辑物理分割独立出来,用户注册登录、LBS 逻辑、摇一摇逻辑、漂 流瓶逻辑、消息逻辑独立开来。把关键的逻辑混搭在一起,当所有的逻辑部署在 同一个服务器上,确实也会带来很大敏捷上的好处,因为不需要额外的考虑部署 和监控的问题。在整个微信的逻辑中,可能现在已经有上百种不同的逻辑,因为 会在逻辑的分割上拆分成8-10 种做分离部署。 一切可扩展——网络协议可扩展、数据存储可扩展

文档评论(0)

taxe + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档