微服务设计模式 - 代理
问题陈述
微服务架构将应用程序构建为一组松散耦合的微服务,每个服务都可以以敏捷的方式独立开发,以实现持续交付/部署。当使用微服务架构构建大型、复杂的应用程序时,我们通常需要准备一个统一的接口,用于在每次服务调用之前完成身份验证和授权等常见工作。
解决方案
代理微服务模式是聚合器模型的变体。在这个模型中,我们将使用代理模块而不是聚合模块。代理服务可以单独调用不同的服务。
在代理模式中,我们可以通过提供转储代理层来构建一级额外的安全性。该层的作用类似于接口。
优点
代理模式提供了统一的接口,而不是每个微服务提供不同的接口。
代理模式允许在一个地方应用统一的关注点,例如日志记录、安全性等。