《微服务架构设计模式》-学习总结08

本篇主要总结第8章:外部API模式

为应对多种可能的外部客户端,外部API的设计需要考虑用户体验、API更新升级和不同通信机制等因素。本章讨论如何妥善解决这些问题并设计外部API。

API Gateway模式

API Gateway,实现一个服务,该服务是外部API世界进入微服务应用程序的入口点。它负责请求路由、API组合和身份验证等各项功能。

  • 请求路由
  • API组合
  • 协议转换
  • 为每种客户端提供它们专用的API
  • 实现边缘功能
    • 身份验证
    • 访问授权
    • 速率限制
    • 缓存
    • 指标收集
    • 请求日志

API Gateway的架构

《微服务架构设计模式》-学习总结08_第1张图片
  • API层
    • 移动设备API
    • 浏览器API
    • 公共API
  • 公共层

后端前置

后端前置,为每种类型的客户端实现单独的API Gateway。

《微服务架构设计模式》-学习总结08_第2张图片

API Gateway的好处与弊端

  • 好处
    • 封装了服务端内部结构,客户端不必调用特定服务
  • 弊端
    • 可能成为开发瓶颈:开发、部署和管理有一定的成本,必须更新API Gateway才能对外提供服务,可能出现排队等待API Gateway更新。

Spring Cloud Gateway

  • 将请求路由到后端服务
  • 实现执行API组合的请求处理程序
  • 处理边缘功能
  • 采用可扩展、响应式的编程风格

学习总结

API Gateway模式是封装微服务内部复杂性,并支持多种外部API的好方法。推荐使用Spring Cloud Gateway。

你可能感兴趣的:(java,设计模式,数据库,vue,编程语言)