- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
⼤规模、⾼并发实时通信平台
的挑战和思路
丰俊⽂@LeanCloud
About
• 丰俊⽂
• wechat: jwfing
• /jwfeng
实时通信能干什么
• 聊天、私信
实时通信能干什么
• 弹幕、抽奖
实时通信能干什么
• 互动游戏
实时通信能干什么
• 协同编辑
⼀条「消息」的旅程
要解决的问题
• ⾼并发—— 同时⽀持上百万连接
• 实时 ——聊天还能磨磨唧唧吗?
• 扩展性——流量成倍增⻓的时候能简单加机器?
• 安全性——隔墙有⽿、有⼈乱⼊,怎么办。。。
• ⼿段多样性——对⽅离线了怎么办。。。
• 使⽤便利性——我要定制,在各个环节定制。。。
服务端架构变化
Android iOS HTML5 Android iOS HTML5
Router
聊天服务器 Logic Server1
Logic Server2
存储服务器 存储集群1 存储集群2
LeanMessage 服务端架构
• 功能模块
消息路由
连接管理
配置
会话管理 消息收发 管理
统计 监控
服务 报警
权限认证 推送消息 对话消息 持续
集成
敏感词过滤
群组管理 成员管理
历史消息 离线消息
LeanMessage 服务端架构
• 微服务(Microservice)
• 细粒度,针对功能和性质拆分
• 传输:消息队列和 RPC
• 元编程:实现本地和远程调⽤ API ⼀致
• 服务作为⼀层抽象独⽴于进程
LeanMessage 服务端架构
• 技术栈
• Clojure
• Netty NIO
• core.async,SEDA pipeline
• Slacker cluster RPC
• zookeeper
• Kestrel
• MongoDB
• Redis
• HBase
LeanMessage 服务端架构
• 部署架构
Client
HTTP
逻辑层 WebSocket
Router
RPC
原创力文档


文档评论(0)