微服务的设计原则与⽣态系统 - 王磊⾃自动化“⼀一切”- 交付流⽔水线 ⾃自动化“⼀一切”- 测试策略略与应⽤用 应⽤用部署⾃自动化(包/映像/容器器) 容器器部署 映像部署 包部署 ⾃自动化“⼀一切” - 基础设施与部署流程 议题 • 微服务架构的核⼼心 • 微服务架构设计原则 • 微服务架构⽣生态系统 • 分布式系统复杂性 • 服务的治理理与维护 • 测试策略略与契约测试 • 持续交付流⽔水线 • 基础设施(私有云/公有云) 基础设施(私有云/公有云) • 持续集成/持续部署流⽔水线 • 团队的敏敏捷/⼯工程化实践 • 端到端的⼯工具链 • API⽹网关 • 服务开发框架 • 测试验证框架 • 部署运维⼯工具 系统化的⼯工程 框架层出不不穷 多维度互相依赖 为什什么需要⽣生态系统? 微服务⽣生态系统 API⽹网关/Edge Service ⽀支撑层 基础设施 交付流⽔水线与⼯工程实践 CaaS/PaaS CaaS/PaaS IaaS 微 服 务 开 发 框 架 ⼯工 程 实 践 与 规 范 持 续 交 付 流 ⽔水 线 端 到 端 的 ⼯工 具 链 注册发现 监控 调⽤用链 路路由 授权认证 ⽇日志聚合 容错 集中配置 基础设施 业务层 - 聚合服务 - 基础服务 接⼊入层 • 流量量限制 • 调⽤用统计 • 安全认证 • 提供统⼀一接⼝口,封装内部变化 • 协议转换 API⽹网关0 码力 | 62 页 | 6.65 MB | 1 年前3
微服务架构与领域驱动设计 - 王磊参与⼈人员:业务⼈人员,领域专家,技术⼈人员,架构师,测试⼈人员等关键⻆角⾊色 开放空间:⾜足够的空间将业务事件流可视化,让⼈人们可以互相讨论 彩⾊色即时贴:使⽤用不不同颜⾊色标识 Alberto Brandolini 如何使⽤用Event Storming 业务流梳理理 寻找事件 寻找命令 寻找聚合 划分⼦子域&界限上下⽂文 理理解业务 发⽣生了了什什么? 通过什什么产⽣生? 谁引起的? 的业务术语 每个⼈人都使⽤用, 但不不出现在设计 中的业务术语 统⼀一语⾔言 业务流梳理理 寻找事件 寻找命令 寻找聚合 划分⼦子域&界限上下⽂文 统⼀一语⾔言 ① ② ③ ④ ⑤ ⑥ 业务流梳理理 领域专家介绍业务,参与者可以任意提问,⼤大家在理理解业务的基础上梳理理出业务流。 业务流梳理理 寻找事件 寻找命令 寻找聚合 划分⼦子域&界限上下⽂文 统⼀一语⾔言 ① ② ② ③ ④ ⑤ ⑥ 寻找事件 注意要点: • 业务流程中发⽣生的事件 • ⽤用“已发⽣生”时态描述 • 有时间顺序 业务流梳理理 寻找事件 寻找命令 寻找聚合 划分⼦子域&界限上下⽂文 统⼀一语⾔言 ① ② ③ ④ ⑤ ⑥ 参与过程: • 根据对业务的理理解,将领域事件写在橙⾊色贴上,每个即时贴代表⼀一个事件 • 事件按照从左到右按时间顺序排列列,不不同参与者的事件需保证相对顺序0 码力 | 28 页 | 1.84 MB | 1 年前3
华为企业级PaaS 微服务应用商业生态(aPaaS/SaaS) 行业 (政府、教育、医疗、零售、……) 伙伴 (软通、中软、幸宜、博思、医 信、……) 工具(CPE) 设计和开发 构建 测试 发布上线 监控运维 部署 流 水 线 ( 持 续 集 成 、 持 续 交 付 ) 扩展插件: Eclipse等 扩展插件: 静态检查等 扩展插件: 三方部署系 统 扩展插件: 客户测试系 统 扩展插件: 客户自有仓 新增功能影响现有业务,升级业务中断 • 业务增长对性能要求高,增加机器不能解决问 题 • 一个业务问题影响整个系统,风险高 基于微服务引擎Mesher功能将PHP应用接入微服务治理 Mesher 工作流服务 Mesher 故障处理服务 Mesher 资产管理服务 Mesher 物料管理服务 Mesher 统计报表服务 微服务注册中心 灵活扩展 应用零改造 微服务化 快速迭代,加 使能业务创新 财政业务应用 指导 规约 支撑 支撑 云平台 财政业务中台 财政云 ISV-A ISV-B ISV-C 供应商 交付 指导 规约 总账引擎 电子印章 报表 电子凭证 工作流 标准存储 数据交换 …… 财政微应用 预算 编制 指标 管理 …… 财务微应用 会计 核算 项目 库 …… 统一基础 数据规范 统一财政 业务数据 标准存储 统一应用 支撑平台 总账结构0 码力 | 17 页 | 3.42 MB | 1 年前3
消费者云CSE微服务实践SSL传输、API鉴权和认证等 对于一些敏感信息,例如用户账号、金额等,在记录日志等落盘 和采集时需要做脱敏处理、资源占用要合理 敏感运维操作,需要记录安全日志,例如服务上线和下线、服务 的流控阈值修改等 微服务框架技术选型-服务治理能力 服务框架丌能只单单解决分布式RPC调用、服务注册&发现和路 由问题,更重要的是业务微服务上线乊后,需要提供实用和丰富 的在线治理能力 CSE在消费者云业务的实践-API First API 接口 契约 消费者1 消费者2 消费者...N 提 供 者 1、接口定义 2、测试用例 3、码流 4、错误码... 最佳实践 无论Rest API,戒者RPC Highway API,统一使用Swagger YAML定义API 服务端和客户端都基于API定义,通过CSE提供的工具生成丌同语言的类库,0 码力 | 22 页 | 1.39 MB | 1 年前3
ServiceComb在华为消费者云的亿级用户微服务实践Nginx、 Ribbon SLB 注册中心 配置服务: Zookeeper etcd 缓存方案: Redis 数据库方案: DB + MQ 服务治理 服务治理: 超时、流控、 降级等 运维KPI: ELK Zabbix 调用链: zipkin 选择ServiceComb的原因: 实践- API First Website: http://servicecomb 业务按需配置ServiceComb的类库依赖,基于standalone轻量级部署 开发态:按照业务实际需要配置ServiceComb的 maven 依赖,只加载需要的类库: 如果需要使用ServiceComb的流控再配置 如果需要使用私有RPC协议时才需要配置依赖 JVM Vert.X ServiceComb SDK Service API 业务微服务实例 Standalone模式,后台应用 不依赖Web容器0 码力 | 15 页 | 1.15 MB | 1 年前3
反应式微服务框架ServiceComb设计思想&mdashAPI⺴关Edge Service p实践案例 为什么微服务框架需要Reactive? • 微服务架构调用次数更多 • 更高的性能,规模效应 • 更好的用户体验 业界趋势 n Java 9中把反应式流规范以 java.util.concurrent.Flow 类的方式添加到了标准库中 n Spring 5对反应式编程模型提供了内置支持,并增加了新的 WebFlux 模块来支持反应 式 Web 应用的开发0 码力 | 33 页 | 5.68 MB | 1 年前3
ServiceComb 的前世今生路 由 多 通 信 访 问 调 用 链 跟 踪 多 事 务 管 理 多 运 行 时 管 理 ServiceMesh 容 错 & 熔 断 限 流 降 级 服 务 隔 离 容 量 预 测 微 服 务 安 全 工具链生态 契约开发 工具 代码自动 生成 文档自动 生成 自动测试 工具0 码力 | 16 页 | 1.45 MB | 1 年前3
可发布版-美团点评微服务OCTO-曹继光钻石 Ø 服务保障能力强 Ø 胜p%千万订单量级b务 星耀 Ø 跨地区容灾和扩展能力 Ø 数千万订单量级b务强需 求 青铜 Ø 基础能力达标 铂金 Ø 性能一流 Ø 足n支撑数百万订单量级b务 Ø 易用性q秀 服务治理演进各c阶段 服务治理实践(%):基础能力达标 - 青铜段t 监控报警 数据分析 • 性能指标 • 来源去向0 码力 | 35 页 | 14.10 MB | 1 年前3
解读Apache使⽤JIRA或者Github issue来追踪与开发相关的 问题。 源代码管理 — 浏览系统中向公众开放的所有部分。只有代 码提交者可以通过PMC指定的流程做出改变。 编译/测试 — 现在⼤多数项⽬都包含持续集成构建和测试流 程。 建⽴⽹站 — 每个项⽬都有⾃⼰独⽴的⽹址 https://project.apache.org 社区⻆⾊ 社区⻆⾊ ⽤户 — ⽤户是项⽬存在的意义,没有⽤户意味着项⽬不应 该存在。 贡献者0 码力 | 43 页 | 4.89 MB | 1 年前3
ServiceComb java SDK详解这些路由配置,可以从配置中心动态下发,避免要发布新微服务时,需要重启Edge Edge Service-自定义路由 如果内置的路由规则无法满足业务需求,比如需要复杂的剪切修改url,或是修改码流 此时可以通过自定义路由进行 内置自动路由规则基于同样的机制实现: • 通过SPI声明VertxHttpDispatcher的扩展 • 通过getOrder声明相对其他dispatcher的执行顺序0 码力 | 21 页 | 1.15 MB | 1 年前3
共 12 条
- 1
- 2













