使用微服务架构快速开发万级TPS高可用电商系统[社区网站] http://servicecomb.apache.org [Github ] https://github.com/apache?q=servicecomb 使用微服务架构快速开发万级TPS高可用电商系统 git clone https://github.com/alec-z/servicecomb-samples cd servicecomb-samples/houserush/script/docker 什么是微服务架构? 一个既“简单”的又“强大” 的后端架构模式。 简单: • 每个服务相对较小并比较容易开发维护。 • 服务可以独立的部署。 • 更适合小团队(个人)开发管理 • 更容易实验和采纳新的技术。 强大: • 使大型的复杂应用程序可以持续的交付和持续的部署。 • 更容易测试 • 更容易对已有大型系统进行修改和扩展 • 容易进行的性能优化 • 更高的可用性 • 更容易的进行性能伸缩性 ] https://github.com/apache?q=servicecomb 服务间的通信 背景:为什么服务间通信重要? • 每个微服务有自己的数据库(层) • 服务架构应用的质量很大程度取决于服务的拆分的高内聚,低耦合,不了解服务间通信,无法做出高质量的拆分。 不同的业务,涉及的不同的服务间通信有不同的要求 1. 关注事务性要求(ACID) 2. 关注对性能的要求 举例:客户维0 码力 | 15 页 | 1.46 MB | 1 年前3
高性能高可用机票实时搜索系统规则库写⼊入量量⼤大,集群峰值达20K TPS • 要求同步延迟很低,不不超过60s • 保持顺序⼀一致性,如果先删后插变成 先插后删,数据会不不⼀一致 • 数据最终⼀一致 • 系统⾼高可⽤用 报价引擎 — 组织索引 北北 京 | 上 海海 成 都 | 杭 州 ⼴广 州 | 郑 州 南 宁 | 天 津 … 索引库 DB Sync 规则库 供应商 A 供应商 B 供 应 商 分 表 按 航 线 分 表 报价引擎 — 同步系统⾼高可⽤用 DB主 DB备 Canal 主 Canal 备 DataSync DataSync DataSync DataSync DB主 DB备 DB备 DB主 ZK ZK ⼊入库 Canal 主 Canal 备 报价引擎 — 架构 Search 1 Search 2 Search 3 Search 北北 京 | 上 海海 成 都 | 杭 州 ⼴广 州 | 郑 州 南 宁 | 天 津 … SearchDB 航班数据 运价数据 <出发、到达、⽇日期、供应商列列表> 报价引擎 — 架构 Search 1 Search 2 Search 3 Search N 北北 京 | 上 海海 成 都 | 杭 州 ⼴广 州 | 郑 州 南 宁 | 天 津 … SearchDB 航班数据0 码力 | 26 页 | 1.94 MB | 1 年前3
高可用分布式流数据存储设计-李玥⾼高可⽤用分布式流数据存储设计 李玥 京东集团 技术架构部 架构师 ⾃自我介绍 ⾃自我介绍 李李玥 京东集团 技术架构部 架构师 负责主导设计新⼀一代京东消息中间件系统,专注于流数据的⼀一致性分发和可靠存储、分布式实时计算和⾼高可⽤用分 布式系统架构等技术领域。 从事互联⽹网研发、架构10余年年,曾在浪潮集团、当当⽹网等公司从事架构相关⼯工作。2017年年加⼊入京东,期间提升京 升京 东商城相关系统的性能和吞吐量量数倍。 ⽬目前致⼒力力于推进京东基础架构技术的创新、对外赋能与开源。 ⽬目录 Why 有什么用? What 如何定位?如何融入生态系统? How 如何实现?如何优化? WHY 为什什么需要流数据存储? 单体应⽤用 烟筒式 SOA 微服务 那些年年的服务 MySQL ES HDFS KV HBase Hive 这些年年的数据 Partition 2 写⼊入: 查找: O(logi) + O(logj) ≈ O(1) O(1) 缓存 Cache File 堆外内存 异步预加载 读写共⻚页 PLRU淘汰策略略 ⾼高并发 ≠ ⾼高性能 减少等待 异步: Future, Callback, React框架 流程拆分 减少锁:CAS原语 减少锁等待: 读写锁, 细粒度锁 写⼊入数据流程 IOThreads0 码力 | 36 页 | 6.02 MB | 1 年前3
超大规模高可用性云端系统构建之禅-蔡超0 码力 | 40 页 | 6.52 MB | 1 年前3
声明式自愈系统——高可用分布式系统的设计之道-王昕声明式自愈系统——高可用分布式 系统的设计之道 王昕 高级技术专家 声明式自愈系统——高可用分布式 系统的设计之道 王昕 高级技术专家 自我介绍 王昕,阿里中间件技术团队高级技术专家,阿里云开放云平台布道师。具有10多年软件 系统开发和架构经验,在分布式系统领域经验丰富,长期参与高可用中间件系统、云平 台基础管理系统和云原生自动运维系统的构建。在国内外有10多项授权和在审软件技术 Ø 分布式系统面临的高可用问题 Ø 设计和验证高可用分布式系统的工具与方法 Ø 设计和验证高可用分布式系统的案例分享 Ø 高可用系统的最佳实践总结 无状态分布式系统的高可用问题 处理消息的服务节点可以随机选择 不必处理数据复制和同步的问题 系统容量和高可用能力可以同步提升 服务节点可以随意迁移,不必固定 IP 和存储 有状态分布式系统的高可用问题 一致性 可用性 分区容错性 Paxos 2PC Gossip Ø 处理请求需要特定节点 Ø 必须要考虑数据备份和同步 的问题 Ø 容量扩展和高可用需要不同 解决方案 Ø 服务节点不能随便迁移 CAP Is Not Simply 2 out of 3 Ø 没有分区时,可用性和一致 性要兼得 Ø 经常要考虑的是可用性和一 致性各有一部分 Ø 根据不同设计应用需求有不 同的组合 Ø 重要的是系统如何恢复到 “最佳状态”0 码力 | 44 页 | 2.47 MB | 1 年前3
从高并发到极端并发:百度 Feed 与春晚红包的高可用实践-吴永巍从高并发到极端并发:百度 Feed 与春晚红包的高可用实践-吴永巍0 码力 | 28 页 | 58.98 MB | 1 年前3
Nacos架构&原理阿里云开发者“藏经阁” 海量电子手册免费下载 特别鸣谢: 目录 作者 6 推荐序 7 前⾔ 9 序言 9 简介 13 Nacos 简介 13 Nacos 架构 17 Nacos 总体设计 17 Nacos 架构 17 Nacos 配置模型 21 Nacos 内核设计 28 Nacos ⼀致性协议 28 Nacos 自研 Distro 协议 38 Nacos 通信通道 42 注册中心的设计原理 63 Nacos 注册中心服务数据模型 80 Nacos 健康检查机制 89 Nacos 配置管理模块 97 配置⼀致性模型 97 Nacos ⾼可⽤设计 100 Nacos 高可用设计 100 Nacos 鉴权插件 103 Nacos 账号权限体系 103 Nacos 认证机制 110 Nacos 前端设计 117 Nacos 前端设计 117 Nacos 性能报告 卿亮 许进 7 > 推荐序 推荐序 阿里巴巴合伙人 - 蒋江伟(小邪) 随着企业加速数字化升级,越来越多的系统架构采用了分布式的架构,主要目的是为了解决集中化 和互联网化所带来的架构扩展性和面对海量用户请求的技术挑战。这里面其中有⼀个关键点是软负 载。因为整个分布式架构需要有⼀个软负载来协作各个节点之间的服务在线离线状态、数据⼀致性、 以及动态配置数据的推送。这里面最简单的需求就是将⼀个配置准时的推送到不同的节点。即便如0 码力 | 326 页 | 12.83 MB | 10 月前3
高可用与一致性:构建强一致性分布式数据库 TiDB-沈泰宁0 码力 | 45 页 | 4.63 MB | 1 年前3
微服务架构云端应用0 码力 | 32 页 | 864.40 KB | 1 年前3
领域驱动设计&中台/领域驱动架构透析与架构解耦领域驱动架构的演进 03 DDD与C4模型 04 DDD与RUP 4+1视图 领域的边界 整洁架构 六边形架构 微服务架构 领域驱动架构的演进 经典的DDD分层架构 经典的DDD分层架构 经典的三层架构 避免贫⾎血模型 与基础设施的解耦 与基础设施的解耦 前后端的解耦 引⼊入应⽤用层 基础设施层的本质 DDD与C4模型 C4模型 分层架构 六边形架构 DDD与RUP0 码力 | 29 页 | 3.02 MB | 1 年前3
共 582 条
- 1
- 2
- 3
- 4
- 5
- 6
- 59













