微服务网关

1.网关是如何演化来的,在微服务中有什么作用?

随着单体架构转化为微服务架构的时候,由一个后台服务由一个单一的服务变成了多个微服务,前端应用需要调用多个服务的接口,为了解决这个问题,网关就产生了。网关就是说微服务架构当中一个对外的统一入口,解耦客户端与内部服务。

2,网关的基本功能

1,网关的核心功能就是路由转发,因为不要有耗时的操作在网关上处理,比如说特定的业务逻辑,网关需要将请求快速转发到后台各个微服务上。

2,网关还能做统一的熔断,限流,认证,日志监控等

3,Spring Cloud gateway的发展史

在1.X的版本当中,网关采用的Zuul网关,但是2.X版本当中,自己研发了一套网关程序,就是

Spring Cloud gateway。

4,和网关类似的功能组件:

nginx:主要作用是反向代理和负载均衡

缺点:配置不灵活

zuul网关:早期的微服务使用的网关

缺点:功能和性能都不如Spring Cloud gateway。

Spring Cloud gateway:

优点:性能比zuul要高,而且可以无缝衔接到微服务开发中来。

5,为什么微服务当中一定要有网关

1,如果没有网关,客户端要请求不同的微服务后端,增加了客户端的复杂性

2,存在跨域问题

3,认证复杂,每个服务都需要独立认证,比如说登录认证,如果没有网关,所有后台都需要做一次登录认证

4,个别的微服务可能没有外网端口,客户端不能直接访问到微服务后端

5,前后端不能解耦,重构困难,比如说有一天需要将一个微服务,继续拆分为两个微服务,那前端也需要改造。因为前端得需要修改拆分后的ip和端口。如果有网关,前端就不需要改造

6,微服务网关的优点

1,反向代理(不需要暴露微服务的真实ip,微服务可以只暴露内网端口,更安全)

2,易于监控:通过网关我们可以统计哪些api的调用量最多,哪些api的耗时比较长,从而做特定优化。

3,易于认证

4,可以将所有微服务的接口做统计与拦截(微服务接口的管理者)

相关推荐
文火冰糖的硅基工坊42 分钟前
[嵌入式系统-100]:常见的IoT(物联网)开发板
人工智能·物联网·架构
失散132 小时前
分布式专题——39 RocketMQ客户端编程模型
java·分布式·架构·rocketmq
许泽宇的技术分享3 小时前
当Excel遇上大语言模型:ExcelAgentTemplate架构深度剖析与实战指南
语言模型·架构·excel
杂化轨道VSEPR3 小时前
多制式基站综合测试线的架构与验证实践(3)
架构
HelloWorld__来都来了3 小时前
Agent S / Agent S2 的架构、亮点与局限
人工智能·架构
小古jy3 小时前
系统架构设计师考点——软件架构设计(架构风格!!!)
架构·系统架构
爱读源码的大都督3 小时前
为什么有了HTTP,还需要gPRC?
java·后端·架构
Cloud孙文波4 小时前
探索Apache APISIX:动态高性能API网关
云原生·kubernetes·apisix
fakerth6 小时前
【OpenHarmony】应用文件服务模块架构
架构·操作系统·openharmony
迎風吹頭髮7 小时前
Linux内核架构浅谈25-Linux实时调度器:SCHED_RR与SCHED_FIFO策略实现
linux·运维·架构