微服务设计模式 - 代理



问题陈述

微服务架构将应用程序构建成一组松散耦合的微服务,并且每个服务都可以按照敏捷的方式独立开发以实现持续的交付/部署。当要使用微服务架构构建大型的复杂应用程序时,我们经常需要准备一个统一的界面,以便在每个服务调用之前完成身份验证和授权等常见工作。

解决方案

代理微服务模式是聚合器模型的一种变体。在这种模型中,我们将使用代理模块来代替聚合模块。代理服务可以单独调用不同的服务。

Proxy Pattern

在代理模式中,我们可以通过提供一个虚拟代理层来构建一层额外的安全保障。此层的作用类似于界面。

优点

  • 代理模式提供了一个统一的界面,而不是每个微服务的一个不同的界面。

  • 代理模式允许在一个地方应用统一的问题,例如日志记录、安全性等。

广告