archsummit 2014 实时系统架构与实践_archsummit2014

archsummit 2014 实时系统架构与实践_archsummit2014

ID:15355512

大小:518.26 KB

页数:22页

时间:2018-08-02

archsummit 2014 实时系统架构与实践_archsummit2014_第1页
archsummit 2014 实时系统架构与实践_archsummit2014_第2页
archsummit 2014 实时系统架构与实践_archsummit2014_第3页
archsummit 2014 实时系统架构与实践_archsummit2014_第4页
archsummit 2014 实时系统架构与实践_archsummit2014_第5页
资源描述:

《archsummit 2014 实时系统架构与实践_archsummit2014》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、ArchSummit 2014 实时系统架构与实践@Tiger_张虎zhanghu@yunba.ioInfoQ中文站2014‐6关于我 •张虎–极光推送(JPush)创始人,前CTO –云巴(Yunba.io)创始人,CEO –@Tiger_张虎Agenda•为什么需要实时系统•实时系统的设计•自动化运维实践为什么需要实时系统?•实时内容分发•实时聊天•实时统计协议的选择 Why MQTT•移动互联网的特点–网络慢、不稳定–功耗低•MQTT (Message Queuing Telemetry Transport) –轻量级 pub/sub –开放协

2、议,支持广泛–开源资源多–扩展方便•Why Not XMPP –网络流量大,据统计 70% 消耗在 XML 标签传输–XML 编解码重海量用户接入-负载均衡问题 •负载均衡器(LVS…)的问题–单点失效–单点性能瓶颈•负载均衡从客户端开始做起•域名负载的问题–域名系统不可靠–更新延迟大 海量用户接入-负载均衡问题 •静态分片 (Uid % N) –单点失效–后期维护成本高 海量用户接入-负载均衡方案 •Ticket Service,动态分配接入点Ticket FrontendServiceStep 1Step 2Client海量用户接入-负载均衡方案

3、 •DNS 服务器响应慢?•全网 DNS 服务器失效!?–我们的服务还可以用!Ticket  询问预埋 Ticket 连接域名解析失败IP 前端服务器前端服务器设计 •维持客户端长链接•同步缓存请求,异步处理请求 Frontend RabbitMQErlang/OTPWhy Erlang?•优点–Process 模型适合处理高并发–管理方便: escript–开发周期比用 C 短•缺点–CPU load –Memory footage •下一步–回归 C?单机维持 350万长链接 主逻辑 订阅关系服务•读取缓存的请求•与具体功能模块交互处理请求 离线

4、消息存储请求处理Frontend 全局路由表过程应答统计服务主逻辑 •与多个模块交互–Frontend –订阅关系服务–离线消息存储–路由表–统计服务•事件驱动–上一个应答驱动下一个操作•平行扩展–添加一个实例,处理能力增强Why node.js•优点–异步模型–广泛模块支持•缺点–动态语言,代码规模不宜过大–运算密集场景效率低•下一步–Scala? –Go? 基础服务 •订阅关系服务、离线消息存储、全局路由表、统计服务•独立 Service、集群,上下文无关•低延迟、高并发高性能 Key/Value•基础服务大部分依赖于 key/value 存储•

5、基于Couchbase改造–Auto failover –动态加节点–读写负载均衡 高性能 Key/Value 设计 •负载均衡从客户端开始–客户端实时监控所有服务器状态•Auto Sharding•无单点失效•动态扩容:增加机器,扩大容量、增加吞吐•异步持久化云服务、自动化运维 •运维就是要自动化–持续集成开发实践–人工部署运维大规模集群不可行•云主机降低运维成本–启动成本低–增加服务器快速•集群扩容过程–自动申请VM –自动配置DNS –自动部署模块、监控–自动测试 Ansible•不需要安装 agent –只依赖 SSH •安装脚本模块化–方便

6、累积、分享AnsibleInventory Playbook Roles [webservers] ‐ hosts: webservers www1.example.com   roles:  roles/common/tasks/main.ymlwww2.example.com    ‐ common     ‐ webapproles/webapp/tasks/main.ymlAnsible实践 •百台服务器规模的集群,几十分钟部署完成•新增节点零配置•集群配置修改,避免遗漏

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。