领域驱动设计&中台/领域驱动架构透析与架构解耦张逸 ����� ��������� 内容 01 领域的边界 02 领域驱动架构的演进 03 DDD与C4模型 04 DDD与RUP 4+1视图 领域的边界 整洁架构 六边形架构 微服务架构 领域驱动架构的演进 经典的DDD分层架构 经典的DDD分层架构 经典的三层架构 避免贫⾎血模型 与基础设施的解耦 与基础设施的解耦 前后端的解耦 引⼊入应⽤用层 基础设施层的本质0 码力 | 29 页 | 3.02 MB | 1 年前3
领域驱动设计&中台/Every Entity as A Microservice0 码力 | 87 页 | 4.02 MB | 1 年前3
领域驱动设计&中台/领域建模的易与难0 码力 | 27 页 | 2.85 MB | 1 年前3
领域驱动设计&中台/用状态机封装领域逻辑用状态机封装领域逻辑 潘加宇 CONTENTS 01 状态机的作用 02 状态机要点和建模思路 03 状态机的实现 危险! 小孩耍大枪 危险! 新瓶装旧酒 Research?Re-Search? 连Re-Search都没有,随意发明新词 Subdomain?主题图。 测试 答对问题有奖金 金额从2.56元到20.48元 请扫我微信以便当场转账 加微信时烦告知尊姓大名 加微信时烦告知尊姓大名 作用 学校里经常教的 编译原理 电子设计自动化 通信协议 …… 作用 三个不同的图 图形 视角 映射到实现 类图 全局、静态 类的签名 序列图 局部(用例)、动态 类之间的协作 状态机图 类、动态 所有的逻辑 测试 答对问题有奖金 金额从2.56元到20.48元 请扫我微信以便当场转账 加微信时烦告知尊姓大名 作用 逻辑内移 都以为自己在做正常的事情, 从行为思考状态变化 从状态属性思考状态名称 优先用原生形容词,防止换汤不换药 有进有出 警戒条件之和必须是完备集(“其他”)且不重叠 吃饱了没?吃饱好干活 建模 打车领域 建模 实现 Rhapsody 执行 http://www.umlchina.com/training/umlchina_rhap_lab_dishwasher_81.pdf http://www0 码力 | 30 页 | 1.75 MB | 1 年前3
领域驱动设计&中台/架构分层模型适配前端应⽤用 API服务 业务领域 基础设施 为前端应⽤用提供API服务,关注事务和分布式等技术性问题 领域模型和领域逻辑,关注业务概念。 访问外界系统(调⽤用外界系统)的技术相关实现。 后台服务 前端应⽤用 分层依据: ⼲干系⼈人和技术点 DDD分层参考架构 - 前端应⽤用 DDD重点关注后台业务服务,不不解决前端交互问题 前端界⾯面 API服务 业务领域 基础设施 前端应⽤用 前端应⽤用 前端应⽤用 ⼲干系⼈人: 终端⽤用户 诉求: 良好的⽤用户体验 技术点: ⼈人机交互设计和实现 UX关注的层 DDD分层参考架构 为前端和第三⽅方应⽤用提供API服务,关注服务编排,事务和 分布式等 前端应⽤用 应⽤用服务 业务领域 基础设施 ⼲干系⼈人: 应⽤用开发⼈人员 诉求: 灵活易易使⽤用的API 技术点: 性能,事务,分布式,安全等⾮非功能性需求 API服务 Model DDD分层参考架构 领域模型和领域逻辑,关注业务概念。 前端应⽤用 API服务 领域模型 基础设施 ⼲干系⼈人: 业务领域专家,业务领导 诉求: 表现业务概念和实现业务价值 要点: 业务建模和复杂性管理理 ⼯工作内容: • 建⽴立业务模型,并体现在代码上 • 管理理模型复杂度,适度拆分模块 • 实现业务逻辑 业务⼈人员关注的层 业务领域 腐化案例例: 亏空0 码力 | 39 页 | 2.54 MB | 1 年前3
领域驱动设计&中台/如何让DDD落地01 为什什么DDD难落地 从2003年年由Eric Evans提出DDD以后,在软件开发领域⼀一直 都是雷雷声⼤大,⾬雨点⼩小。这⼏几年年之所以开始⽕火起来,主要的功 劳也要给队友“微服务”,那么这是为什什么呢? DDD的⽬目标是什什么 软件设计的⻔门槛是什什么 DDD⾥里里难懂的概念 谁来做领域专家? 产品经理 技术组长 架构师 系统分析师 如何从需求到DDD? 我想要⼀一个电商 ⽀支付订单的时候和 ⽀支付宝对接的逻辑 是什什么样的? 魔⻤鬼隐藏在细节之中 今天既然是讲落地,那么就从⼀一个实际需求出发,我们看看 如何把需求拆解成⽤用户故事,然后如何把⽤用户故事转变成领 域故事,最后领域故事⼜又如何变成为代码。 02 从需求到代码 京⻄西商城的需求 ‣ 产品运营⼈人员可以添加新的商品,编辑产品库存,并发布到京⻄西商城,⽤用户 可以进⾏行行购买; ‣ 京⻄西商城的买家可 量,提示⽓气泡“商品已保存成功” - And when:如果订单的数量量超过商品库存中可以锁定的数量量 - Then:订单⽆无法成功提交,提示⽓气泡“库存数量量不不够,仅剩X件” ⽤用户故事到领域故事 点击提交按钮后 1.订单API控制器器会收到创建订单请求,然后根据请求⽣生成创建订单命令,然后让创建 订单应⽤用根据创建订单命令创建商品 2.创建订单应⽤用收到命令后,先调⽤用查询商品库存服务查找商品库存,0 码力 | 32 页 | 3.25 MB | 1 年前3
微服务架构与领域驱动设计 - 王磊微服务架构与领域驱动设计 王磊磊 华为 - 2012技术专家 ThoughtWorks - Lead Consultant Sybase - Tech Leader �2 关于我 • 丰富的持续交付/微服务架构/DevOPS经验 • 《微服务架构与实践》作者 • 《DevOps实践指南》译者 • 中国⾸首批EXIN DevOps Master教练 • ⻄西安DevOps ⻄西安DevOps Meetup 联合发起⼈人 • 《消费者驱动契约测试-Pact》译者 • 《使⽤用SpringBoot/Cloud构建微服务》视频作者(StuQ) 微服务架构与DDD 领域驱动设计的核⼼心 基于事件⻛风暴暴的DDD实践 01 02 03 �4 什什么是微服务架构 微服务架构 �5 Martin Fowler, Mar 2014 Microservices - the 什什么是领域驱动设计 领域驱动设计 �8 领域驱动设计解决的两个核⼼心问题: 1.业务架构如何合理理的设计划分? 2.技术架构与业务架构保持⼀一致? 领域驱动设计是⼀一种设计⽅方法,围绕业务概念构建领域模型, 并通过分离技术实现的复杂性,从⽽而控制软件演化的复杂度。 Tacking Complexity in the heart of software �9 微服务架构与领域驱动设计?0 码力 | 28 页 | 1.84 MB | 1 年前3
领域驱动设计&中台/DDD的为与不为0 码力 | 25 页 | 931.68 KB | 1 年前3
领域驱动设计&中台/物联网平台的反应式设计重新部署整个集群 • 局部业务性能瓶颈,弹性 扩容所有业务 • 加锁处理理资源竞争,增加 性能消耗 微服务 事件驱动 我们做了了什什么 EVENT STORMING EVENT STORMING 核⼼心 通⽤用 ⽀支撑 DeltaSyncService 事件驱动 Devices MongoDB Replica EMQ Node NodeX IoT Applications0 码力 | 18 页 | 1.81 MB | 1 年前3
领域驱动设计&中台/化繁为简--DDD驱动复杂业务软件架构的演进化繁为简 DDD驱动复杂业务软件架构的演进 广联达科技 白彦磊 CONTENTS CONTENT 产品介绍 业务挑战及架构目标 架构演进 总结展望 CONTENTS CONTENT 产品介绍 业务挑战及架构目标 架构演进 总结展望 全过程、全流程、一站式平台 产品特点 业务复杂 多专业领域 BIM全过程流转 人机交互频繁 产品规模大 350万+代码行 150+人团队 共享模型 模糊分层 应对复杂业务挑战的思考 关注点分离 抽象建模 应对复杂业务挑战的策略 领域驱动设计 1 2 3 领域拆分 架构分层 构建领域模型 CONTENTS CONTENT 产品介绍 业务挑战及架构目标 架构演进 总结展望 架构演进 1 2 3 领域拆分 架构分层 构建领域模型 业务分析 2 1 3 4 分析业务流程 提炼业务规则 分析业务用例 识别业务对象 U D D C S C S 土建计算上下 文 U D S C 模型检查上下 文 • 识别真实依赖关系 • 确定上下文物理边界 • 业务演化的趋势 限界上下文解耦-统一接口设计 统一 接口 模型检查 上下文 CAD翻模 上下文 钢筋计算 上下文 截面钢筋模 型上下文 Facade模式 解决: 接口不规范,多套接口 外部接口深入到上游的业务逻辑0 码力 | 33 页 | 1.25 MB | 1 年前3
共 1000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 100













