2016年9月23日,MDCC 2016中国移动开发者大会在北京国家会议中心如期开幕。一年前引燃IM云服务市场的网易云信,在此次大会再次成为投资者、开发者和行业观察者共同关注的焦点。

会上,网易云信Android端高级技术架构师周江华发布了题为“云信IM推送保障及网络优化实践”的主题演讲,与所有开发者共同分享了网易云信IM在应对弱网环境、移动端硬件限制以及Android复杂的生态现状时的探索与心得,由此再度引发了业内对于IM云通讯,尤其是PaaS(Platform -as-a -Service)云服务平台发展思路的思考。

企业级IM云服务市场的最大黑马

基于移动产品服务和互联网+浪潮在国内的发展态势,无数互联网公司、新创业团队乃至传统行业都将目光瞄向了移动互联市场。而在越来越讲求用户粘度和在线互动的当下,从网络购物到在线教育,从协同办公到在线医疗,各个行业各种产品的IM即时通讯服务已经成为如同工业时代水电煤一般基本却重要的刚性需求。以MDCC 2016为例,今年的MDCC开设了跨平台开发、人工智能、物联网开发、直播技术、信息无障碍五大技术专场,以及iOS开发、Android开发、VR开发、智能硬件开发、产品与设计五大技术峰会,其中绝大部分细分领域都绕不开IM的刚性需求。

《中国公有云平台白皮书》数据显示,中国云服务市场增速连续几年在65%左右,越来越多的企业和厂商正在进行转型,将会进一步拉动云服务市场的快速发展。正是看到了这一趋势的势不可挡,网易凭借在即时通讯领域长达16年的经验与技术积累,推出了网易云信。

截至2016年9月,获得56项技术专利,通过CSA-STAR和ISO27001双重国际权威认证的网易云信,已经有9万+开发者接入,覆盖用户3亿,在教育、医疗、O2O、游戏、社交等行业都拥有众多用户支持,包括学而思网校、网易云音乐、宝宝树等知名APP均已接入网易云信的IM服务。

移动IM之痛

相对于PC端,IM在移动端的情况更为复杂,首先是他所总结的移动网络三大特点——慢、断、贵,这也就需要更多考虑到用户需求的复杂性。而且移动终端,尤其是Android系统自身的资源限制。内存、电量、流量,都很珍贵。一方面,Android系统的Low Memory Killer机制随时有可能强制关闭IM以释放更多内存,另一方面移动网络的弱网环境,乃至闲置断联,都对IM长时间在线提出了考验。此外,还有复杂的Android生态环境,尤其是各家ROM逐步加大了对后台应用的控制力度,导致IM在后台保活保连难度越来越大。

“即时性要求有新消息时能够立即收到,如果程序在后台,则要能立即收到推送通知。而通信则要求稳定可靠,系统不宕机,程序不崩溃,传递消息时不会被拦截监听,消息不丢,顺序不乱,不重复。如果包含音视频聊天。则要求延迟低,流畅不卡顿。这两点说起来容易,但是,要真正做出一套稳定可靠的商用级IM系统,挑战非常之多。”周江华分享介绍说。

多维度技术优化策略保障稳定

针对移动场景的弱网环境,为了确保真正的稳定。网易云信在多个维度上采取了优化措施,首先采用了特殊设计的高性能二进制网络协议,并使用了非常精简的协议头,尽量减少数据包大小。心跳间隔根据网络情况动态调整。掉线后,会有自动重连和快速重登,为了节省流量电量,以及防止造成对服务器的信令风暴,重连间隔会指数随机倍增退避。

在弱网环境下,快速的上传下载,更少的等待时间可以带来更好的用户体验。网易云信拥有断点续传、Pipeline技术、边录边传三大特色。断点续传可以减少因网络原因导致的重复传输,减少传输时间,节省流量。Pipeline技术则可以重叠利用http请求的响应等待时间,加快传输速度。发送语音消息时,录一段就发送一段,等到录制完毕时,只需要发送最后一段数据,可以做到录完就传完发送的效果。

同时,为了能够保证程序在后台的存活,云信SDK还采用的独特的分层架构,并设立了独立的长连接结合多元化的推送通道的方式,不仅大大减少了CPU和内存资源的占用,更提高了信息到达率,真正做到保活保连。

周江华说,“提升消息推送达到率和到达速度,优化网络利用效率,节省系统资源一直都是Android开发的核心和基础,新技术,新方法都在不停的涌现”。但这次的演讲不仅仅是阐述云信对iOS和Android移动网络所做的弱网络优化工作,也不仅是告知开发者无需关心移动网络切换时网络断线重连等问题,它反映的更多的是,当绝大多数IM平台商都在朝向功能化的一站化大潮流迈进时,唯有云信不忘静下心来沉淀内功。这种务实和稳定的态度,在诞生之初就充满浮躁因子的互联网行业,殊为难得!同时也印证了网易云信的Slogan——“真正稳定的IM云服务”。

明日预告

周江华 技术干货笔记

《网易云信IM推送保障及网络优化实践》

MDCC 2016:网易云信直击移动IM之痛相关推荐

  1. 网易云信七鱼被推选为“2016企业创服联盟合作伙伴”

    近日,在北京举行的链大会上,网易云信.网易七鱼凭借自2015年推出的公益创业服务计划"易启计划",被推选为2016企业创服联盟合作伙伴. 作为一个公益计划,我们联合的是创业者.开发 ...

  2. 周江华:网易云信IM推送保障及网络优化实践

    周江华,网易资深Android开发工程师,先后主导参与了易信.网易云信.网易七鱼的客户端开发工作,拥有非常丰富的功能开发以及代码优化经验. 2016年9月23日,MDCC 2016中国移动开发者大会在 ...

  3. 网易云信 IM 推送保障及网络优化实践

    本文根据网易云信Android端高级技术架构师 周江华在 MDCC 2016 移动开发者大会上的演讲整理而成,PPT 下载地址:https://github.com/MDCC2016/Android- ...

  4. 大牛喊你来参会 1000+技术精英爬梯即将开幕(MDCC 2016参会指南)

    距 2016中国移动开发者大会(MDCC 2016)开幕只剩3天时间啦! 首先感谢各位同学的踊跃报名!本次MDCC 2016大会报名火爆,吸引超过100家关注移动开发领域的企业组团报名(文末附名单), ...

  5. 专访赵加雨:WebRTC在网易云信的落地

    去年的这个时候,在市面上公开表示使用WebRTC的公司还没几家,但2018年以来,宣布采用或支持WebRTC的公司已经越来越多.实时音视频提供商网易云信也在自研的NRTC中集成了WebRTC.在他们眼 ...

  6. 正式出「圈」丨网易云信圈组的近谋与远虑

    网易云信新晋的 IM 顶流产品「圈组」正式出道了. 「为融入圈子而欣喜,因倾注心血而热爱」,圈组的诞生旨在一站式帮助客户快速开发和构建强大稳定的即时通讯社群,让用户的欣喜和热爱在线上也能拥有一个承载之 ...

  7. 助力区域性银行突破困局,网易云信入选爱分析报告典型案例

    (文末可免费下载) 日前,中国领先的产业数字化研究与咨询机构爱分析发布<2021爱分析·区域性银行数字化实践报告>(下称<报告>). 报告指出,面临着大行.互联网银行.外资银行 ...

  8. 发布丨网易云信智慧云课堂解决方案,让教育不再难

    "教育兴则国家兴,教育强则国家强."从往至今,随着时代向前,知识的重要性愈发凸显,教育也在发展中扮演着愈发重要的角色.而近日,"双减"政策陆续完善出台,更为教育 ...

  9. “Z世代”崛起,网易云信助力猫耳FM引领声音风潮

    2018年,Z世代以一种毋庸置疑的姿态闪亮登场,接棒互联网娱乐消费主力人群.作为移动互联网的"原住民", Z世代自出生之时就已经处在高度互联网化的时代.而高度自由的互联网环境为他们 ...

最新文章

  1. HTML5的本地存储详解
  2. 《java编程思想》学习笔记——内部类五
  3. DL_WITH_PY系统学习(第2章)
  4. 啥都不如烂笔头,约翰霍普金斯大学新研究:学外语还得用手写
  5. Win7系统下hosts文件修改后无法保存
  6. 如何强化应用安全能力,全面拦截 Log4j 漏洞攻击
  7. C语言高级编程:数组和结构体初始化为0的方法
  8. 第十五篇 Python之文件处理
  9. Linux驱动总结3- unlocked_ioctl和堵塞(waitqueue)读写函数的实现
  10. 数学模型建立常用方法
  11. 2022新版完整版青龙面板对接机器人,傻妞对接onebot(oicq)协议实现机器人功能
  12. 【C语言】位段(详解)
  13. 【linux系统如何查看内核版本、操作系统版本等信息】
  14. 九章云极发布YLearn因果学习开源项目;字节跳动大量招聘芯片工程师;苹果被俄法院罚款约21.6万元 | 每日大事件...
  15. Wifi 认证,关联,四次握手(WPA/WPA2/WPA3-SAE)
  16. python 表示2的n次方
  17. ETL工具之Informatica
  18. 度度熊与邪恶大魔王 百度之星
  19. loaderRunner 12 场景测试
  20. 解决IDEA输出中文显示为问号

热门文章

  1. ArcObject开发,“异常在 ESRI.ArcGIS.Version.dll”错误
  2. 第六天学习Java的笔记(循环语句)
  3. python实现图的数据存储_Neo4j推出基于Python的嵌入式图数据存储
  4. 第三届“SLAM技术及应用”暑期学校视频分享(完整版)
  5. fileviewpro绿色免安装版
  6. Android studio | From Zero To One ——滚动视图ScrollView
  7. 回调函数案列(C高级)
  8. Python idle下载、安装与使用教程
  9. 管理active directiory中的用户和计算机管理磁盘,IP多播桌面视频会议系统媒体流管理与安全机制的分析.pdf...
  10. 矢量合成和分解的法则_重点解析丨抛体运动 之 运动的合成与分解