Soumettre la recherche
Mettre en ligne
百度消息队列设计和实现总结
•
Télécharger en tant que PPT, PDF
•
7 j'aime
•
1,582 vues
everestsun
Suivre
百度消息队列设计和实现总结
Lire moins
Lire la suite
Technologie
Signaler
Partager
Signaler
Partager
1 sur 20
Télécharger maintenant
Recommandé
大规模社区构建 百度贴吧的实践
大规模社区构建 百度贴吧的实践
mysqlops
OceanBase-破解数据库高可用难题
OceanBase-破解数据库高可用难题
everestsun
Ocean base 破解数据库高可用难题
Ocean base 破解数据库高可用难题
everestsun
高可用性系统设计与实现
高可用性系统设计与实现
everestsun
BigTable PreReading
BigTable PreReading
everestsun
高可用性系统设计与实现
高可用性系统设计与实现
everestsun
Leveled compaction
Leveled compaction
seki_intheforest
Google LevelDB Study Discuss
Google LevelDB Study Discuss
everestsun
Recommandé
大规模社区构建 百度贴吧的实践
大规模社区构建 百度贴吧的实践
mysqlops
OceanBase-破解数据库高可用难题
OceanBase-破解数据库高可用难题
everestsun
Ocean base 破解数据库高可用难题
Ocean base 破解数据库高可用难题
everestsun
高可用性系统设计与实现
高可用性系统设计与实现
everestsun
BigTable PreReading
BigTable PreReading
everestsun
高可用性系统设计与实现
高可用性系统设计与实现
everestsun
Leveled compaction
Leveled compaction
seki_intheforest
Google LevelDB Study Discuss
Google LevelDB Study Discuss
everestsun
Level db
Level db
宗志 陈
涨客资,用推策 推策产品介绍
涨客资,用推策 推策产品介绍
Baidu
Leveldb background
Leveldb background
宗志 陈
Bigtable
Bigtable
bhanupriyagupta19
The Anatomy Of The Google Architecture Fina Lv1.1
The Anatomy Of The Google Architecture Fina Lv1.1
Hassy Veldstra
Baidu
Baidu
Nanor
The Missing Manual for Leveled Compaction Strategy (Wei Deng & Ryan Svihla, D...
The Missing Manual for Leveled Compaction Strategy (Wei Deng & Ryan Svihla, D...
DataStax
GOOGLE BIGTABLE
GOOGLE BIGTABLE
Tomcy Thankachan
The Google Bigtable
The Google Bigtable
Romain Jacotin
达尔文信息云平台
达尔文信息云平台
SmartData
03 李实恭-乘云之势以智致远 0611
03 李实恭-乘云之势以智致远 0611
ikewu83
Zh tw introduction_to_cloud_computing
Zh tw introduction_to_cloud_computing
TrendProgContest13
微服務架構 導入經驗分享 吳剛志 - Community Open Camp
微服務架構 導入經驗分享 吳剛志 - Community Open Camp
Andrew Wu
雲端運算的演進與定義
雲端運算的演進與定義
Awei Hsu
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
guiyingshenxia
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
colderboy17
新浪微博平台与安全架构
新浪微博平台与安全架构
n716
天涯论坛的技术进化史-Qcon2011
天涯论坛的技术进化史-Qcon2011
Yiwei Ma
Novice's and Expert's Mental Model of Interacting with Router
Novice's and Expert's Mental Model of Interacting with Router
Yian Lu
3com 20101116
3com 20101116
i70
Iaa s管理平台的规划与研发 社区
Iaa s管理平台的规划与研发 社区
benbenhappy
Grid Technology and Enterprise Grid / 网格技术及其在企业信息化中的应用
Grid Technology and Enterprise Grid / 网格技术及其在企业信息化中的应用
Zac John
Contenu connexe
En vedette
Level db
Level db
宗志 陈
涨客资,用推策 推策产品介绍
涨客资,用推策 推策产品介绍
Baidu
Leveldb background
Leveldb background
宗志 陈
Bigtable
Bigtable
bhanupriyagupta19
The Anatomy Of The Google Architecture Fina Lv1.1
The Anatomy Of The Google Architecture Fina Lv1.1
Hassy Veldstra
Baidu
Baidu
Nanor
The Missing Manual for Leveled Compaction Strategy (Wei Deng & Ryan Svihla, D...
The Missing Manual for Leveled Compaction Strategy (Wei Deng & Ryan Svihla, D...
DataStax
GOOGLE BIGTABLE
GOOGLE BIGTABLE
Tomcy Thankachan
The Google Bigtable
The Google Bigtable
Romain Jacotin
En vedette
(9)
Level db
Level db
涨客资,用推策 推策产品介绍
涨客资,用推策 推策产品介绍
Leveldb background
Leveldb background
Bigtable
Bigtable
The Anatomy Of The Google Architecture Fina Lv1.1
The Anatomy Of The Google Architecture Fina Lv1.1
Baidu
Baidu
The Missing Manual for Leveled Compaction Strategy (Wei Deng & Ryan Svihla, D...
The Missing Manual for Leveled Compaction Strategy (Wei Deng & Ryan Svihla, D...
GOOGLE BIGTABLE
GOOGLE BIGTABLE
The Google Bigtable
The Google Bigtable
Similaire à 百度消息队列设计和实现总结
达尔文信息云平台
达尔文信息云平台
SmartData
03 李实恭-乘云之势以智致远 0611
03 李实恭-乘云之势以智致远 0611
ikewu83
Zh tw introduction_to_cloud_computing
Zh tw introduction_to_cloud_computing
TrendProgContest13
微服務架構 導入經驗分享 吳剛志 - Community Open Camp
微服務架構 導入經驗分享 吳剛志 - Community Open Camp
Andrew Wu
雲端運算的演進與定義
雲端運算的演進與定義
Awei Hsu
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
guiyingshenxia
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
colderboy17
新浪微博平台与安全架构
新浪微博平台与安全架构
n716
天涯论坛的技术进化史-Qcon2011
天涯论坛的技术进化史-Qcon2011
Yiwei Ma
Novice's and Expert's Mental Model of Interacting with Router
Novice's and Expert's Mental Model of Interacting with Router
Yian Lu
3com 20101116
3com 20101116
i70
Iaa s管理平台的规划与研发 社区
Iaa s管理平台的规划与研发 社区
benbenhappy
Grid Technology and Enterprise Grid / 网格技术及其在企业信息化中的应用
Grid Technology and Enterprise Grid / 网格技术及其在企业信息化中的应用
Zac John
01.ofm11g概览
01.ofm11g概览
Meng He
Challenges and opportunities computing Kuo-Yi Chen
Challenges and opportunities computing Kuo-Yi Chen
kuoyichen
云计算在电信业务中的应用分析 罗圣美
云计算在电信业务中的应用分析 罗圣美
Riquelme624
美国云计算发展现状及趋势-2010
美国云计算发展现状及趋势-2010
Jiang Zhu
安全云平台的探索实践
安全云平台的探索实践
Hardway Hou
淘宝网架构变迁和挑战(Oracle架构师日)
淘宝网架构变迁和挑战(Oracle架构师日)
vanadies10
Mocha Bsm
Mocha Bsm
王 莆中
Similaire à 百度消息队列设计和实现总结
(20)
达尔文信息云平台
达尔文信息云平台
03 李实恭-乘云之势以智致远 0611
03 李实恭-乘云之势以智致远 0611
Zh tw introduction_to_cloud_computing
Zh tw introduction_to_cloud_computing
微服務架構 導入經驗分享 吳剛志 - Community Open Camp
微服務架構 導入經驗分享 吳剛志 - Community Open Camp
雲端運算的演進與定義
雲端運算的演進與定義
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
新浪微博平台与安全架构
新浪微博平台与安全架构
天涯论坛的技术进化史-Qcon2011
天涯论坛的技术进化史-Qcon2011
Novice's and Expert's Mental Model of Interacting with Router
Novice's and Expert's Mental Model of Interacting with Router
3com 20101116
3com 20101116
Iaa s管理平台的规划与研发 社区
Iaa s管理平台的规划与研发 社区
Grid Technology and Enterprise Grid / 网格技术及其在企业信息化中的应用
Grid Technology and Enterprise Grid / 网格技术及其在企业信息化中的应用
01.ofm11g概览
01.ofm11g概览
Challenges and opportunities computing Kuo-Yi Chen
Challenges and opportunities computing Kuo-Yi Chen
云计算在电信业务中的应用分析 罗圣美
云计算在电信业务中的应用分析 罗圣美
美国云计算发展现状及趋势-2010
美国云计算发展现状及趋势-2010
安全云平台的探索实践
安全云平台的探索实践
淘宝网架构变迁和挑战(Oracle架构师日)
淘宝网架构变迁和挑战(Oracle架构师日)
Mocha Bsm
Mocha Bsm
百度消息队列设计和实现总结
1.
消息 列 与队
设计 实现总结 Sunzhidong msn: everestsun@126.com
2.
• 系统概述 • 应用场景 •
后续发展 • 项目总结 –设计 –实现 –优化 –思考 提纲
3.
• 消息队列技术是分布式应用间交换信息的 一种技术。它简化了应用之间数据的传输 ,屏蔽底层异构操作系统和网络平台,提 供一致的通讯标准和应用开发,确保分布 式计算网络环境下可靠的、跨平台的信息 传输和数据交换。 • “
百度知道” 消息 列概述队
4.
• BMQ 是百度
Ecom 和 IBase 两部门共同合 作研发,基于 pub/sub 模式的消息队列集群 服务 • 产品特性 –管理性:多产品线统一运维,支持多 topic –安全性:用户管理,读写权限验证 BMQ 介绍
5.
• 产品特性 –可靠性:保证消息在异常情况下不丢失、不重 复 –有序性:保证消息有序送达所有消费者 –可用性:异常情况下的 Failover
容错机制 –易用性:提供 C++/PHP 的客户端 API, 屏蔽通 讯细节 –高性能:多客户端聚合性能异步 5K/s, 单客户 端同步 1K/s 无 slave 模式 7K/s BMQ 介绍
6.
• 异步通讯应用 –MailboxIM • 增量可靠传输 –Yahoo
Pnutscm-transfer • 社区消息广播 –TwitterFeed • 复杂系统解耦 MQ 用 景应 场
7.
• 集群可扩展能力 • 提升单点的可靠性 •
单点切换提高可用性 • 增强系统状态监控 • 制定运维管理系统 后 展续发
8.
• 定制化的下游消费需求 • 丰富的多语言
API • Restful 接口支持 • 特殊需求的扩展 –生产消费:单一的中间消费者 –点对点:单一的终极消费者 后 展续发
9.
• 设计 –明确系统目标特性,逐一突破 –慎重引入开源、第三方产品库 –不要凭空想象出一些特殊需求 –多考虑便于测试、运维的需求 –缩小迭代的 Gap
,连续非跳跃 目项 总结
10.
• 设计 –架构设计 •集群与分布:中心节点(单点) •分布可管理性 :
问题 <- 中间层 •如何可扩展:无状态设计 •轻量级设计,与其避免异常,不如可恢复 目项 总结
11.
• 设计 –数据模型 •需求决定了模型 •数据校验、压缩、索引 –内存管理 •Cache 设计 •同步一致性需求 目项
总结
12.
• 设计 –负载均衡 •极端情况下的负载问题 •热点的发现和避免 –静态 Vs
动态 –主动 Vs 被动 •Pull /push •懒惰更新,延迟策略 •外部驱动 目项 总结
13.
• 开发 –什么更重要? –KISS +
DRY + SOLID –Holley Wood : don’t call me, we will call u –防御性编程的不信任法则: •input/output check •inner stat check •double check 目项 总结
14.
• 开发 –提高可单测性 –降低对外依赖 •低耦合 <-
高内聚 –代码设计分层 –关于代码重构 •refactor early and often –DRY 事不过三 目项 总结
15.
• 开发 –关于异常 •严格发现,延迟处理 •不稳定,不要过多容错 –多线程问题 •各种锁之外 –Lock free –引用计数 –数据
+ 状态 目项 总结
16.
• 优化(软件 +
硬件) –架构、流程、算法、代码 –明确性能目标和限制 –抓住瓶颈重点优化,权衡 ROI –不要过早、过度优化 –通用影响性能,特有流程优化 系 化统优
17.
• 优化 –网络模型选择, socket
40ms pro –降低锁粒度,防止多重锁 Write 24/s->5000/s –尽量应用异步接口和模型 –迭代开发,尽早建立测试基准 •便于分析和定位变化的根源 系 化统优
18.
• 架构 –多 slave
是否必要 –网络线程模型优化 • 优化 –消息同步转发方式 • Slave Group Commit Vs 滑动窗口 • Common Batch Commit Vs 滑动窗口 –Slave 对性能的影响 –滑动窗口对性能的影响 –滑动窗口的动态调整 后 思考续
19.
• 日志完整性 –线上问题的可跟踪性 • 深藏的
bug 某一天会灵魂附体 • 试运行和监控 –监控,监控,还是监控 后 工作续
20.
结束语 谢 谢
Télécharger maintenant