微服务与 DDD
根据微服务框架 Dubbo 的架构图,画出 Dubbo 进行一次微服务调用的时序图。
服务提供者,服务消费者、服务注册中心
关于微服务架构(中台架构、领域驱动设计、组件设计原则),你有什么样的思考和认识?
微服务:
模块和功能拆分,独立演化;
简化编译、部署和代码分支管理;
减少与旧功能的耦合,简化新增业务的难度;
无论是webservice还是dubbo,都是属于微服务的一种实现方式;
微服务框架接管了失效转移、负载均衡等服务通用功能;
领域驱动设计:
业务层面面向过程,底层实现面向对象;
领域对象要包含数据+方法,明确业务范围和做事方式;
组件设计原则:高内聚、低耦合,对修改关闭、迪米特法则
组件内聚原则:
复用发布等同原则:是复用的粒度也是发布的粒度。
共同封闭原则:会同时修改的、目的相同的放一个组件。
共同复用原则:不要依赖不需要的东西
组件耦合原则:
无循环依赖原则
稳定依赖原则:组件依赖比他更稳定的组件
稳定抽象原则:组件的抽象化程度应该和稳定性程度成正比
中台架构:
把业务和实现间新增一层,将业务的共性组件化、服务化;
能快速支撑前台的业务。
评论