mirror of
https://github.com/NohamR/knowledge-kit.git
synced 2026-05-24 20:00:37 +00:00
1.1 KiB
1.1 KiB
领域驱动设计与中后台、BFF的关系
- DDD 将业务拆分为多个领域,比如订单、商品...。每个域的服务是单独可以运行、维护的。比如订单域有10台机器,1台负载均衡,9台真正做事情的机器。有任务过来调度器进行任务派发。
- 客户端或者大前端都存在模块的概念。比如商品、订单,也是以 Pods 的形式去维护,每个领域的代码都单独可以运行、维护。模块之间不存在耦合关系,通过接口的形式去能力发现、能力调用。比如订单域通过某个接口访问某个商品详情的能力
- DDD 的最佳实践是不是微服务。比如订单服务所在的工程,可以单独运行、维护。
- 基于微服务,肯定需要一个 BFF 层,扮演业务编排、字段转换。比如订单域的模型有100个字段。但是订单的接口为客户端服务,客户端(通过接口找2018~2020年的、待付款的订单),BFF 层就去扮演数据组装、字段筛选的作用。