38、微服务设计、部署与优化全解析

微服务设计、部署与优化全解析

1. 微服务设计模式

1.1 分解模式

微服务的分解模式旨在确保架构稳定、服务松散耦合、内聚且可测试,同时让自治团队能完全掌控一个或多个服务。主要有以下两种分解方式:
- 按业务能力分解 :业务能力指企业为创造价值所开展的活动,如商户管理和客户管理,且通常呈层次化组织。应用此模式的主要挑战在于准确识别业务能力,这需要对业务本身有深入理解,可与业务分析师合作。
- 按子域分解 :该模式与领域驱动设计(DDD)方法相关,定义服务时需识别 DDD 子域。与按业务能力分解的主要区别在于,前者更关注业务组织架构,后者则聚焦业务试图解决的问题。

1.2 数据库模式

在软件架构中,数据存储和处理是复杂问题,错误选择会影响可扩展性、性能和维护成本。对于微服务,为实现松散耦合,出现了每个微服务连接自己数据库的设计模式。此模式虽增加了一些开销,但能为每个微服务单独优化架构和索引。不过,由于数据库通常是庞大的基础设施,这种方法可能不可行,因此微服务之间共享数据库也是一种可理解的权衡。

1.3 部署策略

当微服务在多个主机上运行时,资源分配方式有以下两种:
| 部署策略 | 优点 | 缺点 | 解决方案 |
| — | — | — | — |
| 单主机单服务 | 可调整机器以适应工作负载,服务隔离性好 | 部分主机可能利用率不足 | 使用满足微服务需求的最小机器,并在必要时进行扩展 |
| 单主机多服务 | 有助于优化机器利用率 | 不同微服务可能需要不同优化,难以在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值