作者丨微信技术团队
编辑丨小智
2016年第二季度,微信月活已超8亿。如此大体量的一个产品,其背后的技术支持必然非同一般。小Q自作主张,网罗了有关微信的各类技术干货,从系统、架构到朋友圈,一篇文让你了解隐藏在微信这庞然大物背后的技术之道。
2011.1.21 微信正式发布。这一天距离微信项目启动日约为2个月。2个月的开发时间,微信后台系统经历了从0到1的过程。从小步慢跑到快速成长,经历了平台化到走出国门。
在从无到有的过程里,微信后台做了哪三件最重要的事情?
在快速成长的过程里,微信团队靠什么举措渡过各种难关?
在发生大规模故障的时候,怎么做容灾、性能优化、安全加固?
微信交出的这份优异答卷,解题思路是怎样的?本文由张文瑞,微信后台团队出品。
微信朋友圈技术之道:三个人的后台团队与每日十亿的发布量
截止到2015年7月,微信每月活跃用户约5.49亿,朋友圈每天的发表量(包括赞和评论)超过10亿,浏览量超过100亿。
得益于4G网络的发展,以上数据仍有很快的增长,而且相对于PC互联网时代,移动互联网时代的峰值要来得更加凶猛。比如,2015年元月的流量到了平时的2倍,而峰值则达到了平时峰值的2倍,相当于平时正常流量的5倍,这对整个系统的考验是很残酷的。
微信后台研发团队由三位工程师组成。开发模式采用了敏捷的方式,大概一个月一个小版本,一个季度出一个大版本,另外每天都会有不停的后台更新,很多是用户看不见的。
本次分享将简单介绍微信后台团队的开发模式、微信朋友圈的架构以及在性能上的一些工作,供各位参考。
微信Android客户端的架构演进史,可以说,这是一个典型的Android应用在从小到大的成长过程中的“踩坑”与“填坑”的历史。
从1.0版本安装包的354KB,到截止本文时5.3版本的24.1MB,从最开始两三个码农的突击作业,到今天的集团军开发力量,微信的体量在不断增大,开发同学遇到的成长的烦恼也越来越多。
Android系统先天的弊端与产品需求过程研发的矛盾,推动着客户端架构演进史这架车轮不断向前滚动。不断调整进化的架构,在为微信未来的成长保驾护航。
到底是怎样调整进化的?一起来看吧!
2016除夕当天微信红包收发总量80.8亿,超15年8倍,共有4.2亿人参与,平均每人收发20个。 收发峰值出现在年初一凌晨00:06:09,那一秒钟40.9万个红包。
面对亿级的企业资金以及亿级的红包,回想这其中的过程并不简单,充满各种变数,稍有闪失就可能功亏一篑。让我们一起回顾一下这里的准备过程,看看技术上是如何为这只许成功不许失败的项目保驾护航的。
每天万亿级调用的重量级系统,每次申请序列号平时调用耗时1ms,99.9%的调用耗时小于3ms,服务部署于数百台4核CPU服务器上!
微信在立项之初,就已确立了利用数据版本号实现终端与后台的数据增量同步机制,确保发消息时消息可靠送达对方手机,避免了大量潜在的家庭纠纷。时至今日,微信已经走过第五个年头,这套同步机制仍然在消息收发、朋友圈通知、好友数据更新等需要数据同步的地方发挥着核心的作用。
而在这同步机制的背后,需要一个高可用、高可靠的序列号生成器来产生同步数据用的版本号。这个序列号生成器我们称之为seqsvr,目前已经发展为一个每天万亿级调用的重量级系统,其中每次申请序列号平时调用耗时1ms,99.9%的调用耗时小于3ms,服务部署于数百台4核CPU服务器上。本文会重点介绍seqsvr的架构核心思想,以及seqsvr随着业务量快速上涨所做的架构演变。
随着移动互联网迅速发展,大数据技术为企业带来了前所未有的发展机遇,然而中小企业和传统行业由于其数据量缺乏且单一,技术投入不足的劣势,面对大数据技术发展带来的红利只能望洋兴叹。
本文介绍了微信朋友圈广告的斑马系统,该系统旨在为中小企业和传统行业提供基于微信大数据分析技术的受众分析,精准推广,激活留存和商业智能决策的全套解决方案。
你朋友圈看到的那些定位精准的广告,究竟是怎么来的呢?
今日荐文
点击下方图片即可阅读
API平台对比哪家强:Twitter还是Slack?
喜欢我们的会点赞,爱我们的会分享!