9.1 边缘服务器和 Spring Cloud Gateway

由于 API 网关是系统的入口点,它也是处理安全、监控和容错等跨切面关注点的绝佳位置。边缘服务器是位于系统边缘的应用程序,实现 API 网关和跨切面关注点等功能。你可以在调用下游服务时配置断路器以防止级联故障。你可以为所有对内部服务的调用定义重试和超时。你可以控制入口流量并强制执行配额策略,根据某些标准(如用户的会员级别:基础版、高级版、专业版)来限制系统的使用。你还可以在边缘实现认证和授权,并将令牌传递给下游服务(如第 11 章和第 12 章所述)。

然而,重要的是要记住,边缘服务器会增加系统的复杂性。它是生产环境中需要构建、部署和管理的另一个组件。它还会在系统中增加一个新的网络跳转,因此响应时间会增加。这通常是一个微不足道的代价,但你应该牢记在心。由于边缘服务器是系统的入口点,它面临着成为单点故障的风险。作为基本的缓解策略,你应该按照第 4 章中讨论的配置服务器的相同方法,部署至少两个边缘服务器副本。

Spring Cloud Gateway 大大简化了构建边缘服务的过程,专注于简单性和生产力。此外,由于它基于响应式技术栈,它可以高效地扩展以处理系统边缘自然发生的高工作负载。

下一节将教你如何使用 Spring Cloud Gateway 设置边缘服务器。你将了解路由、断言和过滤器,它们是网关的构建块。你还将把前一章学到的重试和超时模式应用到网关和下游服务之间的交互中。

注意: 如果你没有跟随前面章节的示例,可以参考本书附带的仓库,使用 Chapter09/09-begin 中的项目作为起点(https://github.com/ThomasVitale/cloud-native-spring-in-action)。

results matching ""

    No results matching ""