微服务API网关详解及常用网关介绍
37 浏览量
更新于2024-08-31
收藏 578KB PDF 举报
微服务网关
微服务架构的兴起带来了许多好处,但同时也存在一些问题需要解决,例如如何做到有效拆分、减少服务间调用、统一管理所有服务的接口、如何进行自动化部署等。API网关正是解决这些问题的关键之一。
微服务网关是一种统一管理API的网络关口、通道,是整个微服务平台所有请求的唯一入口。它承担着认证授权、访问控制、路由、负载均衡、缓存、日志、限流限额、转换、映射、过滤、熔断、注册、服务编排、API管理、监控、统计分析等等非业务性的功能。
微服务网关的主要功能包括:
1. 负载均衡:微服务架构一般都有一个注册中心,后端服务启动时候会将自己的服务地址注册到注册中心,并和注册中心保持心跳,网关通过监听注册中心来进行服务的发现,并根据一定的负载均衡算法(随机、轮询、权重、hash等)将客户端的请求尽量均衡地转发到后端的各个服务中。
2. 服务熔断、重试及路由切换:为了防止服务的雪崩效应,当检测到服务不可用时,需要进行快速失败。当某服务在短时间内多次发生调用失败,服务消费方的断路器会被断开。开路的断路器就像电路跳闸一样,阻止消费方向故障服务发送请求,直接返回失败或者执行消费方的降级逻辑。断路器通常在一定时间后关闭,在这期间可以为底层服务提供足够的空间来恢复。
3. 限流:限流的主要目的是防止类似DDos的恶意攻击导致服务器短时间内收到大量请求而造成的服务瘫痪。因此需要在接口层面做流量的控制,API网关统计一段时间内的请求数量,并根据一定的规则来限制请求的数量。
在选择或者实现微服务网关时,需要考虑到安全性、性能、可扩展性、可靠性等因素。同时,微服务网关的部署也需要减少接触面,确保安全。
微服务网关在Spring Cloud微服务框架中的应用也得到了广泛的应用。Spring Cloud Gateway是Spring Cloud中的一部分,提供了基于API的路由、负载均衡、熔断、限流等功能,可以作为微服务网关的实现方案之一。
微服务网关是微服务架构中不可或缺的一部分,它提供了统一的入口、认证授权、访问控制、路由、负载均衡、缓存、日志、限流限额、转换、映射、过滤、熔断、注册、服务编排、API管理、监控、统计分析等等非业务性的功能,提高了微服务架构的可靠性、安全性和可扩展性。
2021-03-18 上传
2021-10-11 上传
2022-07-13 上传
2023-04-07 上传
2023-06-08 上传
2023-09-01 上传
2023-09-08 上传
2023-09-05 上传
2023-04-06 上传
weixin_38711740
- 粉丝: 5
- 资源: 952
最新资源
- OptiX传输试题与SDH基础知识
- C++Builder函数详解与应用
- Linux shell (bash) 文件与字符串比较运算符详解
- Adam Gawne-Cain解读英文版WKT格式与常见投影标准
- dos命令详解:基础操作与网络测试必备
- Windows 蓝屏代码解析与处理指南
- PSoC CY8C24533在电动自行车控制器设计中的应用
- PHP整合FCKeditor网页编辑器教程
- Java Swing计算器源码示例:初学者入门教程
- Eclipse平台上的可视化开发:使用VEP与SWT
- 软件工程CASE工具实践指南
- AIX LVM详解:网络存储架构与管理
- 递归算法解析:文件系统、XML与树图
- 使用Struts2与MySQL构建Web登录验证教程
- PHP5 CLI模式:用PHP编写Shell脚本教程
- MyBatis与Spring完美整合:1.0.0-RC3详解