购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.9 客户端弹性模式

因为微服务架构是高度分布式的,所以开发人员必须对如何防止单个服务(或服务实例)中的问题级联暴露给服务的消费者这个问题十分敏感。为此,这里将介绍4种客户端弹性模式。

客户端负载均衡 ——如何在服务上缓存服务实例的位置,才能让对微服务的多个实例的调用负载均衡到该微服务的所有健康实例。

断路器模式 ——如何阻止客户端继续调用出现故障的或遭遇性能问题的服务。在服务运行缓慢时,它会消耗调用它的客户端上的资源。开发人员希望这些微服务调用快速失败,以便调用客户端可以快速响应并采取适当的措施。

后备模式 ——当服务调用失败时,如何提供“插件”机制,允许服务的客户端尝试通过调用微服务之外的其他方法来执行工作。

舱壁模式 ——微服务应用程序使用多个分布式资源来执行它们的工作。该模式指的是如何分隔这些调用,表现不佳的服务调用才不会对应用程序的其他部分产生负面影响。

图1-13展示了这些模式如何在服务表现不佳时,保护服务消费者不受影响。第7章将会介绍这些主题。

图1-13 使用微服务时,必须保护服务调用者远离表现不佳的服务。记住,慢速或无响应的服务所
造成的中断并不仅仅局限于直接关联的服务 PyXNfmCIDFDrfkAI4cAdHX4Dlb5nBZuwze03viOgo5YHA5UZWiB+4YkvppCIIHhv

点击中间区域
呼出菜单
上一章
目录
下一章
×

打开