使命必达钉钉企业级消息服务的机遇与挑战_26页_3mb
报告摘要
使命必达——钉钉企业级消息服务的机遇与挑战总结
核心内容概述
钉钉作为一款面向中小企业的即时通讯工具,其消息服务在企业沟通场景中扮演着至关重要的角色。随着业务规模的扩大,钉钉面临诸多挑战,包括消息发送的高并发、企业信息安全保障、信息流整合以及系统高可用性等方面。为应对这些挑战,钉钉在推送链路优化、单元容灾机制、消息存储模型等方面进行了深入探索和实践。
主要观点
- 钉钉消息服务的使命:确保消息的高效、可靠送达,是钉钉“使命必达”理念的核心体现。
- 挑战多样:从消息发送的性能、到达率,到企业信息安全,再到信息流整合和系统高可用性,钉钉需在多个维度进行优化。
- 技术手段:采用同步协议、链路优化、加密传输、分布式调度系统等技术手段,提升消息服务的稳定性和安全性。
- 单元化架构:为满足企业高可用和国际化战略需求,钉钉采用单元化部署,实现同城双机房主备和异地热备,保障服务连续性。
关键信息
1. 钉钉发展历程
- 截至2016年12月31日,钉钉已拥有**300万+**的企业组织。
- 提供多端接入(iOS、Android、Web),支持长连接通道复用,提升交互体验。
2. 消息服务挑战
挑战一:万人全员群节日场景
- 问题:消息写扩散成本高,消息入库效率低。
- 解决方案:
- 分而治之:将万人群拆分为多个千人群进行分发。
- 消息管控:支持已读未读降级、群禁言、发送频次控制。
- 推送策略:消息量超过阈值时,客户端主动拉取,降低流量压力。
挑战二:考勤打卡提醒、运营活动推送
- 问题:消息推送需要兼顾时效性和安全性。
- 解决方案:
- 时效性强、周期重复消息:使用本地推送(Local Push)。
- iOS:使用
Scheduling Local Notifications。 - Android:使用
AlarmManager.set。
- iOS:使用
- 时效性不高、批量推送需求:采用任务实时调度系统。
- 分布式LoadController实现削峰平谷。
- 推送前进行疲劳度和黑名单过滤。
- 支持海量消息撤回任务。
- 时效性强、周期重复消息:使用本地推送(Local Push)。
挑战三:企业信息安全保障
- 问题:消息泄露、离职用户消息处理。
- 解决方案:
- 群聊消息:离职用户自动退群。
- 单聊消息:密聊消息在端上清除已读状态。
- 传输加密:客户端使用SSL/TLS协议进行加密传输。
- 服务端加密:消息内部流转和持久化全链路加密。
- 第三方加密:支持端上使用第三方SDK进行企业维度加解密,服务端数据透明,离职时消息立即失效。
- 认证体系:通过ISO27001:2013和公安部信息系统三级等级保护认证。
挑战四:协同工具信息流整合
- Incoming:将第三方服务的信息聚合到钉钉群聊中,实现自动化信息同步。
- Outgoing:将会话内容输出到指定机器人,与外部系统进行信息交换。
- 支持的机器人类型:
- 通用Chatbot:如GitLab、GitHub、JIRA、Travis、心知天气、神小马等。
- 企业专属Chatbot:如内外小蜜、报警助手等。
3. 推送链路优化
同步协议推送
- 背景:IM1.0时代消息和会话状态无法多端同步,导致用户体验差。
- 优化:自研同步协议,参考业界主流方案,于2015年8月立项,2016年3月上线,6月IM业务全量接入。
- 优势:实现消息和状态的有序同步,提升客户端处理效率,降低系统负载。
消息到达率提升
- 重要性:消息到达率是衡量IM服务可靠性的重要指标。
- 定义:同一天内各接收延迟时间段消息数量 / 消息推送总量。
- 目标:钉钉消息到达率目标为30%,实际提升至60%+。
- 优化措施:
- iOS:使用APNs推送,优化海外节点。
- Android:适配各大厂商推送机制(华为、OPPO、VIVO、小米等)。
- 整体策略:通过消息存储模型优化和推送链路改进,提升消息送达效率。
4. 单元容灾及未来挑战
单元化架构的必要性
- 企业高可用需求:保障消息服务的稳定性和连续性。
- 国际化战略:支持政企专有云部署,满足多地区用户需求。
HA、NA、LA架构
- HA (High Available):应用和数据部署在同城双机房,异地机房热备,可承载所有用户流量。
- NA (Normal Available):应用和数据部署在同城双机房,数据有主备。
- LA (Low Available):应用和数据部署在单机房,无备份。
未来挑战
- 万人大群推送策略:如何优化消息存储成本和推送效率。
- 用户跨单元数据迁移:支持用户在不同单元间迁移数据。
- IM群组能力开放:提升群组功能的灵活性和可扩展性,满足企业多样化需求。
总结
钉钉企业级消息服务在提升用户体验、保障信息安全、优化推送效率等方面取得了显著进展。面对高并发、多端管理、信息整合等挑战,钉钉通过同步协议、链路优化、加密传输、单元化架构等技术手段,构建了稳定、安全、高效的IM系统。未来,钉钉将继续优化消息存储模型、提升推送策略,并探索群组能力开放和跨单元数据迁移等方向,以满足不断增长的企业级通信需求。
展开完整摘要
试读结束,高清完整版pdf/doc/ppt,请点下载