文档介绍:该【米聊服务器技术选型与架构 】是由【utuhlwwue61571】上传分享,文档一共【19】页,该文档可以免费在线阅读,需要了解更多关于【米聊服务器技术选型与架构 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。自我介绍
瞿晋萍
2010/7月份加入小米至今
从2010年10月到现在一直开发米聊
米聊服务器端架构师
米聊消息系统技术带头人
之前在Microsoft3年,开发Bing搜索引擎和windows phone 7云服务客户端
之前在Lucent和Nortel开发电信软件
米聊服务器的技术选型与架构设计
O1
人多,钱傻,速来
我们生活在一个怎样的年代?
天下武功,唯快不败
怎样办?
快速推出新功能,
试错,验证后快速迭代改进
2014
快速扩张研发队伍,
模式初步验证后,加大资源投入
2015
架构快速水平扩张
当业务方向对,推广运营到位,互联网海量业务规模
2016
工程技术速度的考量要保证可持续的快
如何保证可持续的快
3大纪律,8项注意
技术选型的3大纪律
大厂都在用
01
自己搞得掂
02
项目输得起
03
业务分而治之
技术上:
服务命名naming/自动发现register&discovery/治理(负载均衡,柔性服务)
各个服务封装功能和数据,把接口以ip+port暴露出来
工程考虑:作为研发和部署的单位,加人方便、独立研发演进、降低复杂度、
米聊的技术实现:
Zookeeper,命名树
各个服务注册成命名节点
客户端先去zookeeper查找,再调用
注意1:分治,SOA
服务接口要求
紧致(compact)
多版本支持(multi-version)
同步与异步
数据访问:
DAL+DAO
工程考虑:屏蔽变化和复杂性,便于共享,使用和升级
我们的选择
同步用thrift (服务使用HsHa)
异步用rabbitmq
rabbitmq不就是分布式的actor吗
非阻塞,并发性好
事件驱动,容错性好
Traffic shaping, 容峰值流量好
数据库访问层DAL(data source)
注意2:服务/数据访问通过接口