京东大规模高访问量业务下的技术及架构支撑


www.jd.com 京东大规模高访问量下的技术及架构支撑 田琪 架构目标 京东业务系统 架构设计原则 应用架构 基础架构 数据库架构 京东分布式数据库特性 • 支持MySQL,MariaDB,MongoDB等数据库 • 服务高可用,主库故障,从库自动切换 • 数据高可靠,定期快照备份,增量备份 • 数据自动拆分,一键无缝迁移扩容 • 针对特殊业务需求,定制优化特殊的数据库版本 Proxy 节点 原生MySQL协议,接入使用标 准MySQL客户端 数据根据路由规则分库分表, 对业务访问透明 单库容量满,可以快速在线无 缝迁移,不影响业务 JProxy 数据拆分 Transfer在线无缝迁移 应用的真实需求 • 应用不关心 – sharding – failover – eventual consistency • 应用需要事务 • 应用需要SQL • 应用需要ACID 下一代分布式数据库 • 空间分为若干个range • 使用RSM保障一致性 • 每个node由range组成 • 对外暴露一个完整的map • 在map基础上实现分布式事务 分布式事务 • 至少支持snapshot isolation级别 • 使用2阶段提交协议+2阶段锁协议 • 数据多版本并存 • 每个key由时间戳+真实key组成 • 提交时间有可能会被推迟 一致性算法 一致性算法 一致性算法 容器技术 - 资源隔离 • clone/setns/unshare三个系统调用是容器资源隔离 技术的核心实现 • 内核新增nsproxy数据结构使不同进程可以拥有各自 不同的命名空间 容器技术 - 资源隔离 容器技术 - 资源配额管理 容器技术使用方面的挑战 • 依赖较新内核版本(lxc需要至少3.8 以上) • IO控制方面问题比较多 – Buffer IO如何处理 – IO带宽控制只能用CFQ IO调度器,不适合高速 硬件设备 – deadline IO调度器只支持限流,缺乏弹性 • 混合存储之后应该在哪一层进行限制 www.jd.com Q & A 谢谢
还剩21页未读

继续阅读

下载pdf到电脑,查找使用更方便

pdf的实际排版效果,会与网站的显示效果略有不同!!

需要 10 金币 [ 分享pdf获得金币 ] 0 人已下载

下载pdf