这段时间很迷微信,难得中国人能弄出个不错的IT产品出来,网上关于张小龙先生已经被所谓“神化”的声音不绝于耳,实际看下来这些声音没几个戳中要点的干货,不免让人觉得酸葡萄。
过年在家看了据说是张小龙的讲产品的PPT,不知真假,但从里面可以看出作者的产品境界已经高于国内大部分常见的产品经理这个职位上的人一大截。今天又看了腾讯大课堂里面这位周颢先生讲微信架构的视频,可以对照一下一位网友对该视频讲述要点的摘录一亿用户增长背后的架构。虽然视频是2010年的了,现在用户量早就是原来的好几倍了,架构肯定更比当时复杂许多,但对我这个一直做企业应用的人来说还是有不少收获。下面谈谈我的看法吧:
整个演讲是围绕微信架构技术的四个复杂点:协议、容灾、轻重、监控。
协议是指终端与接入服务器之间数据交换的协议,终端的种类繁多怎么统一我没想过,即使原来的有一个业界标准的协议肯定也需要进行改造,以达到通信的数据量最小,解决移动中连接网络时网速不稳定,还有当时中移动搞出个什么CMNET、CMWAP的概念(现在不知道还有没有)等等各种坑爹,应该是坑程序员的问题。
容灾里主要提的是存储层的容灾,这里面我只知道个CAP理论,里面还有算法的考虑。以前知道搞计算机只有碰到了算法之类的事情才算是在搞计算机“科学”,问题研究越深越发现原来是个数学问题,工作这么多年,早远离了这些深奥的公式了
轻重倒是个可以借鉴的思路,做互联网产品的终端都应该借鉴借鉴这个,否则出点小问题就要用户更新你的软件,烦都被你烦死了。这也体现了微信一直宣扬的极简的理念。简单指的是对用户操作来说,背后不管多么复杂,面向用户的就是那么几个按钮、动作。
监控与统计的分开我第一次听到,确实,监控应该有与应用相同的功能要求,对于数亿级用户的这么个海量系统来说,只有精准的监控才能快速有效的做出响应,甚至是先于用户感知的问题预判。
针对这四点共讲了一个小时多一点,已经很精练了,我在想要是我来搞这个系统这四点问题如何解决?每一点可都是一个庞大的课题,换我会不会提出分而治之的解决系统复杂度的思路?从过往自己的经验,更喜欢或者说习惯的是一种统一起来考虑问题的思路,希望找到一把屠龙刀,最终所有问题循着这把刀全部解决,还解决的干净利落,只有设计出这样的系统才算漂亮的,牛逼的。现在想来这思路绝对不适合做互联网应用,敏捷的风行不是没有道理的。
还是前段时间说的那句话,一个人最重要的是要有问题意识,能提出了真正的问题,后面的事情才能顺的下来,这也就是“古之所谓善战者,胜于易胜者也”的意思吧。可,究竟几个人能实现这顿悟似的“惊险一跃”呢?
相关推荐
在技术架构上,微信是如何做到的?日前,在腾讯大讲堂在中山大学校园宣讲活动上,腾讯广研助理总经理、微信技术总监周颢在两小时的演讲中揭开了微信背后的秘密。
系统讲述了微信的设计理念,系统架构,容灾策略等内容。
在技术架构上,微信是如何做到的?日前,在腾讯大讲堂在中山大学校园宣讲活动上,腾讯广研助理总经理、微信技术总监周颢在两小时的演讲中揭开了微信背后的秘密。
最全微信运营架构图.docx
微信消息一键已读 微信消息批量已读 微信消息全部已读 1、微信消息怎么批量已读 2、微信消息可以一键已读吗 3、微信如何设置全部已读 目前支持 windows 微信 下载后双击运行即可
亿级流量新浪微博与微信Redis架构实战
微信红包的架构设计简介。学习高并发 装逼利器。
微信红包架构设计
微信架构方案.docx
微信小程序 阅读读书 树芽读书 (源代码+截图)微信小程序 阅读读书 树芽读书 (源代码+截图)微信小程序 阅读读书 树芽读书 (源代码+截图)微信小程序 阅读读书 树芽读书 (源代码+截图)微信小程序 阅读读书 树芽...
微信后台微服务架构及存储架构设计.pdf
微信小程序 语音跟读 (源码)微信小程序 语音跟读 (源码)微信小程序 语音跟读 (源码)微信小程序 语音跟读 (源码)微信小程序 语音跟读 (源码)微信小程序 语音跟读 (源码)微信小程序 语音跟读 (源码)微信小程序 语音跟...
主要讲解微信发展历程、微信后台系统架构(介入层、业务逻辑层、存储层)主要从这三个方便讲解微信的架构;业务层逻辑包括:目前我们经常使用的微信功能:朋友圈、消息发送、群等;存储主要介绍多地多活数据的存储...
微信技术总监谈架构:微信之道——大道至简
最全微信运营架构图
微信开发简单架构,对于了解微信开发很有帮助哦。