`
mmdev
  • 浏览: 12847173 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

【幻灯片分享】千万级并发在线推送系统架构解析 | 个信互动 叶新江 | Android DevCamp

 
阅读更多

再谈Android推送实现:《千万级并发在线推送系统架构解析》| 个信互动叶新江| Android DevCamp

主题简介: 移动短消息是大家所熟知的一种信息推送方式, 基于信令通道的推送在简单信息的体验方面已经被大家所接受。 在目前移动互联网方面,简单的文字推送已经不够满足需要。这也是移动互联网背景下推送系统的发展的机遇。 本主题就千万级并发在线推送系统如何在低成本下,保证推送的时效性、有效性、内容形式的多样性、以及省电省流量等方面进行一个解析和分享。

讲师信息:叶新江,个信互动(北京)网络科技有限公司高级副总裁,负责公司研发及工程实施,资深高并发分布式系统架构师。曾任 Microsoft MS中国首席架构师,爱立信广州研发中心(Ericsson CGC)高级系统架构师,卓望数码移动梦网研发主管。并有多年银行金融的技术管理经历。


推荐指数:3星

推荐理由:很靓的题目,也是备受关注的话题,更是很多开发者希望解决的痛点。

不足之处:缺乏对具体案例的深入讲解,开场的关于产品的介绍有点长。

现场评分:3.4


【讲师现场靓照】



<iframe src="http://www.slideshare.net/slideshow/embed_code/13839340" width="597" height="486" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" style="border:1px solid #CCC;border-width:1px 1px 0;margin-bottom:5px" allowfullscreen=""> </iframe>

备注:* 因为炫姐姐对SlideShare这一平台的偏爱,尽管需要使点小技巧才能上传分享,但是炫姐姐还是坚持选择了这一功能强大却简洁好用的平台。一来对国外这些开发出优秀的工具和平台、造福于互联网和人类的团队表示致敬,二来则是对国内对于这些优秀的工具和平台的限制表示一下立场。读者如果不能正常浏览,那么需要像炫姐姐一样用点小技巧。而对于那些还是不知道炫姐姐在说什么的小白读者,可以移步到这里查询原因。


【幻灯片下载页面】:Android DevCamp幻灯片下载:千万级并发在线推送系统架构解析 | 个信互动 叶新江 -来自CSDN下载频道(不需要积分,自由下载)


【幻灯片内容刚要】:
  • 1. Android DevCamp Produced by CSDN
  • 2. 千万级在线推送系统 架构解析 叶新江 Anson @猪立叶-Anson @个信互动 @八爪推送
  • 3. Agenda Total Est. 50min. 5min 5min 15min 20min 5min公司&产品介绍 推送系统 总体介绍 手机端SDK解析 平台解析 交流
  • 4. 公司及产品简介Found @ 2010年9月一起扛着这个公司的人 ~100 人 个信 个推 八爪
  • 5. 个人PC与移动设备•  数据无线推送•  随时并高速地将PC内容 (文档/视频/音乐/照片/应用…) 推送到手机
  • 6. 互联网与移动设备•  任意网站信息与手机的推送•  通过八爪API或浏览器插件,⼀一键推送互联网内容到手机•  网站植入八爪JS代码,推送到移动设备
  • 7. 与第三方互联推送•  API开放•  八爪™ 认证账号与推送能力开放
  • 8. 推送系统以上产品均有推送系统的基因在里面。接下去我们进入正题 ------
  • 9. 移动互联时代的推送诉求SMS 推送时代被证明了推送的价值但是: - 内容不够丰富 - 大小限制 - 无法满足端对端的完成业务链
  • 10. 移动互联时代的推送诉求我们需要的是: - 更低成本更高效率, 最好不要钱 - 展示的内容丰富,有声有色最好还有视频 - 能够智能判断内容对应的应用,没有就下载安装,最好还能自动运行 J - 和应用能互动, 能激活应用 - 对用户分段,针对性要强 - …… (总之要求是⼀一个神器)
  • 11. 个信推送平台(个推) a push service, not only notification but also action and engagement-  目前针对 Android 和 Symbian, 当然主要是 Android 了-  前端 4S (slim, save power, save traffic, stable)-  创建和应用的互动和带动(action & engagement)-  千万级并发支持
  • 12. 个推 – 手机端(1)-  SDK 的 4S (slim, save power, save traffic, stable) 这个很重要,因为你不能喧宾夺主. 个推 SDK 的几个数据: –  空载连接每月流量消耗<2M –  电量消耗<2% –  SDK安装包空间占用<200KB –  正式发布到目前为止, 无 crash 报告
  • 13. 个推 – 手机端(2)-  4S (slim, save power, save traffic, stable) 不要用写 PC 程序的方式来写 Mobile 应用。 需要及时处理消息,合理避免手机CPU sleep.采用尽量少的线程,用类似 ActiveObject 的方式来用 单线程模拟多任务实现使用私有二进制协议代替 XMPP,消息Bundle 发送 独立的进程, 尽量不影响应用本身
  • 14. 个推 – 手机端(3)-  内建的 Content Render Engine (CRE) 布局 内容抓取 Text, Image, Web View, Video-  内建的 Action Chain Engine (ACE) 目前使用 JSON 方式定义 Action Chain正在实现 VM 方式 Action 类型( 列出其中⼀一部分) : - 消息提示、显示 - 跳转到 browser - 启动应用 - 下载应用 - 激活应用
  • 15. 个推 – 服务端(1)-  推送方式的选择 Pull - 轮询频率的选择是关键 Pull - BOSH/Comet 基于 http 实现,较复杂大并发下的效率是个问题 个推采用 Push 方式。 * 实时要求高 * 数据不常变化 * 在解决省电省流量基础上
  • 16. 个推 – 服务端(2)-  并发接入能力 尽可能大的单台设备的接入能力是大用户量系统必须解决的问题。 据传: 2011/09,WhatsApp 100 万连接 2012/01/06,200 万TCP连接 Urban Airship 在2010年 50万连接 个信: 单个 Java JVM 4G 实例,支持 50 万个业务连接(非简单连 接) 2012 年目标, 单台支持 100 万并发连接
  • 17. 个推 – 服务端(3)-  大并发长连接下需要考虑的关键点 尽量减少应用内存的footprint. 高效使用内存(pre-alloc mem pool, thread-local-mem pool) 选择合适 OS 和 语言组合 如果是 Java, NIO 是必须的. NIO 事件处理模式的选择(Same Thread, Worker, Dynamic, Leader-Follower ). 如果是 Java, JVM 的调优也是关键 (Heap size, GC etc) 注意⼀一些已知的问题(譬如 JDK 7 之前的 Select Spin) 内核调优(特别是网络参数方面)
  • 18. 个推 – 服务端(4)-  异步系统 要增加系统的吞吐量,系统内部需要异步调用 复杂度增加 最好需要内部有统⼀一的通讯框架(支持同步、异步、回调;广播、 随机、轮询等机制)-  去状态化,全 cluster 状态化会导致资源的 affinity, 在 scalability 方面有较大影响。易 于水平扩展。状态转移到公用设置上(如分布缓存或者 DB 中) 各个组件均 cluster 化,随时扩展容量,系统自调整能力强。
  • 19. 个推 – 服务端(5)-  分布式缓存 自动平衡、自动复制、容错 (可以借用目前使用的⼀一些分 布式缓存的 cluster 方案)-  分布式数据库存储层 自动分发、路由设置、逻辑上去除不同数据库的差异。-  数据分析和 BI 大数据量处理 (Hadoop, Hive, infoBright w/ MySQL )
  • 20. 个推 – 服务端(6)总体平台架构示意图
  • 21. 个推 – 如何接入(@钱昊_个信) 申请接入 获得个推接入帐号 登录个推系统 服务端API调测 个推SDK客户端集成 创建应用 (沙箱环境) (沙箱环境) SDK和服务端API 正式发布 统计日志反馈 切换至生产环境
  • 22. Thanks , End!Contacts: mailto: exinjye@gmail.com weibo: @猪立叶-Anson msn: yexj_zj@hotmail.com

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics