写点什么

钉钉企业级 IM 存储的挑战与实践

  • 2020-02-05
  • 本文字数:728 字

    阅读完需:约 2 分钟

钉钉企业级 IM 存储的挑战与实践

ArchSummit 北京 2019 大会上,劲弩讲师做了《钉钉企业级 IM 存储的挑战与实践》主题演讲,主要内容如下。


演讲简介


作为 ToB 产品,钉钉具备独特的业务场景。首先是超级大群,在钉钉上,企业的组织关系可映射到 IM 的群。例如全员群就是包含企业所有员工的一个群。这带来为数众多的超级大群。在节假日时期,特别是元旦、春节或者双 11 这样的重大活动,老板和员工在群里高频互动,给 IM 存储系统带来巨大的压力。


第二是聊天数据长期保存,历史消息可实时回溯。与 ToC 的消息所不同的是,钉钉的聊天数据属于企业资产,需要长期保留。随着钉钉体量迅速增长,面临着存储容量扩展瓶颈,存储成本高昂等问题。


第三是稳定性要求高。一旦钉钉的消息发不出去或者收消息出现延迟,会大面积影响企业的核心业务运转。从历史经验来看,存储恰恰是非常容易出问题的依赖。


面对上述挑战,我们将 IM 存储模型从写扩散升级为读写扩散混合,减少超级大群对存储的扩散量;与阿里自研的 X-Engine 存储引擎共创,实现了一个低成本,适应钉钉 IM 业务的冷热存储架构;同时通过存储冗余,应对高稳定性的要求。本次分享系统介绍我们的解决思路和关键细节,希望可以让你有所收获。


内容大纲


  1. 钉钉 IM 业务的特点

  2. 钉钉 IM 的消息存储模型

  3. 钉钉 IM 冷热存储架构和背后的思考

  4. 钉钉 IM 高可用存储架构实践


听众受益点


  1. 了解业界 IM 的存储模型

  2. 了解企业级业务的特点,及其对技术架构的影响

  3. 了解存储成本优化的思路和解决办法


讲师介绍


劲弩


钉钉 IM 服务端研发技术专家


主要负责钉钉 IM 的存储架构优化、成本控制和消息发送稳定性保障。2016 年加入钉钉,擅长高可用、低成本的企业级系统架构,对钉钉 IM 的技术演进深有体会。












完整演讲 PPT 下载链接


https://archsummit.infoq.cn/2019/beijing/schedule


2020-02-05 19:362082

评论

发布
暂无评论
发现更多内容

TDesign 更新周报(2022年4月第1周)

TDesign

Flink on K8s 在京东的持续优化实践

Apache Flink

大数据 flink 编程 流计算 实时计算

在线OPML压缩工具

入门小站

工具

虎符交易所Hoo研究院|关于跨链(上)——Cosmos

区块链前沿News

虎符交易所

OceanBase 在江西人社养老统筹系统的实践分享

OceanBase 数据库

oceanbase 江西人社

最全讲解:GPU技术架构知识

Finovy Cloud

人工智能 GPU服务器 GPU算力

OpenMLDB 获评 CSDN IT 技术影响力之星 “年度开源项目”奖项

第四范式开发者社区

人工智能 深度学习 数据库 开源 特征平台

王者荣耀商城异地多活架构设计

smile

【模块七】王者荣耀商城异地多活架构设计

yhjhero

架构训练营

使用 Next.js、LeanCloud 和 Tailwind CSS 创建全栈应用

张泽豪

全栈 LeanCloud nextjs Tailwind Vercel

在线XML转CSV工具

入门小站

工具

模块二

ASCE

为什么Java仍旧生机盎然——对“为什么Java正在消亡”的回应

Geek_rze78a

Java

建木持续集成平台v2.2.5发布

Jianmu

开源 持续集成 开发运维 建木CI

web前端培训-数组扁平化实现方式

@零度

前端开发 ES6

[Day7]-[动态规划] 最大子数组和

方勇(gopher)

LeetCode 动态规划 数据结构与算法、

浅谈电商网站开发中用户会话管理机制的设计和实现原理

汪子熙

JavaScript 电商 用户管理 电商系统 4月月更

直播回顾| Apache Pulsar 2.10.0 新特性概览

Apache Pulsar

开源 架构 云原生 Apache Pulsar Apache Pulsar 社区

手机应用使用情况监控统计APP

android App 自律

Hoo虎符研究院|区块简报220406期

区块链前沿News

虎符交易所

王者荣耀商城异地多活架构设计

张逃逃

王者荣耀商城异地多活架构设计

风中奇缘

架构实战营 「架构实战营」

怒肝 JavaScript 数据结构 — 栈篇(一)

杨成功

JavaScript 数据结构 4月月更

带码农《手写Mybatis》进度3:实现映射器的注册和使用

小傅哥

小傅哥 mybatis 手写Mybatis

面试突击37:线程安全问题的解决方案有哪些?

王磊

Java java面试

Flink 在 B 站的多元化探索与实践

Apache Flink

大数据 flink 编程 流计算 实时计算

架构实战训练营模块七

刘帅

linux之ssh-keygen命令

入门小站

Linux

【架构学习 07】——王者荣耀商城异地多活架构设计

tiger

架构实战营

深入剖析 RocketMQ 源码 - 负载均衡机制

vivo互联网技术

负载均衡 分布式 java

高性能云桌面服务提供商酷栈科技加入龙蜥社区,共建开源新生态

OpenAnolis小助手

开源 云桌面 龙蜥社区 CLA 酷栈科技

钉钉企业级 IM 存储的挑战与实践_ArchSummit_劲弩_InfoQ精选文章