14、设计可靠的微服务

设计可靠的微服务

在微服务架构中,每个服务都不是孤立存在的,它们相互协作,共同构成一个庞大的系统。然而,复杂系统中故障不可避免,如何设计可靠的微服务成为关键。本文将介绍服务可用性的概念,探讨微服务应用中可能出现的故障类型及影响,并探索设计可靠服务通信的方法。

1. 定义可靠性

要衡量微服务的可靠性,可从服务的可用性入手。以一个简单的微服务系统为例,服务 holdings 调用两个依赖服务 transactions market-data ,这些服务又有各自的依赖。

服务在运行过程中,会有成功执行工作的时间(正常运行时间,uptime),也会有因故障无法完成工作的时间(停机时间,downtime)。可用性是指服务在运行时间内正常工作的百分比,它是衡量服务可靠性的指标。

高可用性通常用“几个九”来表示,例如两个九是 99%,五个九是 99.999%。关键的面向生产的服务可靠性通常不应低于这个标准。

假设 holdings 调用 market-data 的成功率为 99.9%,看似可靠,但随着请求量增加,0.1% 的停机时间会变得很明显。微服务的依赖链可能会很复杂,整个系统的故障率可以通过将依赖链各部分的可用性相乘来估算。

例如,有六个成功率相同的服务,每个服务的调用成功率为 99.9%,那么系统的综合可靠性为 0.999^6 = 0.994 = 99.4%。可以看出,整个应用的可靠性总是低于其独立组件,服务的最大可用性是其依赖服务可用性的乘积。

如果服务

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值