领域驱动设计&中台/微服务的容器化实践## 微服务的容器化实践 灵雀云 邢海涛 DDCHINA 议程 01 微服务容器化实践 02 用户案例 ## 微服务容器化实践 ■ 镜像管理 ■ Docker Registry, Harbor, JHipster ■ 容器编排 ■ Kubernetes, Mesos, Docker Swarm ## 用户案例 开发环境,桌面微服务访问K8s集群内依赖,WireMock? 测试环境,k8s集群内微服务互访 测试环境,k8s集群内微服务互访 ## 用户案例 - 根本问题 主机网络和容器网络可能不通 因为Kubernetes只定义规范,导致网络方案太多 因为跨节点的容器网络不通: 容器地址重复 ☐ 容器地址不可达 ## 方案 - Networking (1) ||Overlay|L3 Routing|Underlay| |---|---|---|---| |描述|把二层报文封装在IP报文之上 |描述|把二层报文封装在IP报文之上进行传输|通过三层路由的方式向IP报文传输到目的宿主机|直接使用底层网络的IP,与宿主机在同一个网络里进行通讯| |网络要求|底:IP可达|二层可达或BGP可达|二层可达| |性能|中:封包、拆包|高:路由转发|高:几乎没有损耗| |IP类型|虚拟IP|虚拟IP|物理IP| |静态IP|不支持|不支持|支持(灵雀云)| |场景|对性能要求不高的;网络环境不灵活的|大多数场景|对性能要求高的;需要和现有业务直接通信;需要静态IP|0 码力 | 19 页 | 1.86 MB | 2 年前3
领域驱动设计&中台/DDD促进传统架构微服务转型## DDD促进 传统架构微服务转型 范钢 DDCHINA ## CONTENTS 01 远程智慧医疗平台的转型过程 02 分析微服务转型的设计难题 03 运用领域驱动的转型实践 ## 现在是一个快速变化的时代   ## 带来的问题 • 健康网站团队 ## 微服务快速交付用户价值 ## 业务 负责人 特性 特性团队 用户故事 待办 事项 特性团队  客户 特性团队 架构师 ## 微服务的横向扩展 单体应用将所有功能都放到一个系统中  ## 拆成微服务 A monolithic application puts all its functionality into a single process...  ## 微服务架构的九大特征 传统单块架构  微服务架构  end 当控制权明确交出去的时候有明确的责权协议 调用方感觉“一切尽在掌控置中” Task A 和 Task B 互相让渡控制权,共同完成一个流程 当 Task B 干的事情很“基础”很“通用”,我们称 Task B 为 Scheduler 延迟加载,产生 $ n+1 $ 次select问题,优化的做法是product在聚合构造时就已经全部加载数据,在聚合中依赖注入仓储就是一种典型的延迟加载 数据抓取模式影响了你的聚合?你的聚合可能是基于视图而不是业务规则构建的。 ## 从聚合组装用于展示的查询结果 • 聚合的数据只和不变性有关,和展示无关; -0 码力 | 28 页 | 2.09 MB | 2 年前3
领域驱动设计&中台/架构分层模型适配[Image](/uploads/documents/d/6/7/4/d6747f59fd7276163e2f53063ffe4e1a/p4_1.jpg) 给用户提供界面,关注用户交互和体验 为前端应用提供API服务,关注事务和分布式等技术性问题 领域模型和领域逻辑,关注业务概念。 访问外界系统(调用外界系统)的技术相关实现。 分层依据: 干系人和技术点 ## DDD分层参考架构 - 前端应用 前端应用 f53063ffe4e1a/p5_1.jpg) DDD重点关注后台业务服务,不解决前端交互问题 干系人: 终端用户 诉求: 良好的用户体验 技术点: 人机交互设计和实现 ## DDD分层参考架构 前端应用 技术人员关注的层 API服务 业务领域 基础设施 ## 为前端和第三方应用提供API服务,关注服务编排,事务和分布式等 干系人: 应用开发人员 诉求: 灵活易使用的API 表现业务概念和实现业务价值 要点: 业务建模和复杂性管理 ## 工作内容: • 建立业务模型,并体现在代码上 - 管理模型复杂度,适度拆分模块 实现业务逻辑 ## 模型: • 应用服务 — 跨Bond Context DTO • 领域服务 — 跨聚合 • 聚合 实体 仓库 事件 技术人员关注的层 ## DDD分层参考架构 与主干过程中的动作对应】 异常 【描述主干过程、分支过程中出现异常时的动作系列】 包含 特别需求 【如:对于性能方面有何要求】 假设 【用例中我们做了哪些假设】 ![Image]注意和问题 【还有哪些未确定事项】 0 码力 | 32 页 | 3.25 MB | 2 年前3
领域驱动设计&中台/DDD的为与不为命名空间 ## 理想的战术设施 应用服务 企业对外服务 聚合根 算法 核心业务 资源库 数据 IT资产 ## 无法避免的贫血模型  ## 无法避免的贫血模型 应用服务 聚合根 领域服务 支付接口  ## 领域驱动设计和架构 数据驱动 VS 领域驱动 - 设计结果 ## 数据驱动设计结果 合同管理服务 应用层 服务层  应用层 领域层 基础设施 ## 领域驱动设计结果 合同管理服务  合同签约服务  ## DDCHINA ## CONTENTS 01 领域驱动设计概述 02 DDD战略模式在旅游电商架构演进的应用 030 码力 | 47 页 | 1.45 MB | 2 年前3
领域驱动设计&中台/领域建模的易与难深圳  扫一扫上面的二维码图案,加我微信 ## 从三本书说起  分析瘫痪症 [Image](/uploads/documents/4/e/a/7/4ea7752a073a25b12aa64e592731c65b/p5_1.jpg) 解决方案空间(实现)对象:属性和行为的集合 “我认为软件开发中困难的部分是规格说明,设计和测试这些概念上的结构,而不是对概念进行表达和对实现逼真程度进行验证。” 《人月神话》 ## 概念化及其难点-1 












