首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
SAAS
ToB门户
了解全球最新的ToB事件
论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
微博
Follow
记录
Doing
博客
Blog
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
排行榜
Ranklist
相册
Album
应用中心
qidao123.com ToB IT社区-企服评测·应用市场
»
论坛
›
数据库
›
Mysql
›
网关常见问题
返回列表
发新帖
网关常见问题
[复制链接]
发表于 2023-1-5 19:34:27
|
显示全部楼层
|
阅读模式
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要
登录
才可以下载或查看,没有账号?
立即注册
×
网关常见问题
侯门一入深似海,从此萧郎是路人
1、什么是网关
总而言之,网关就是统一入口、鉴权校验、动态路由和过滤封装。
2、为什么需要网关
微服务
架构下,单体应用被切割成多个
微服务
,如果将所有的
微服务
直接对外暴露,会出现
安全
方面的各种问题,且内外耦合严重。
Gateway 网关架构可以细到为每一个服务的实例单独
配置
一个 Gateway,也可以粗到为整个架构
配置
一个 Gateway。这样,原本复杂的系统架构就会变得更简单可控。
3、网关设计
我认为没有很大的必要去重复造车,现在市面上较为成熟的网关方案还是挺有借鉴价值的,不过我们仍可以了解下网关的设计思路。
不管是何种网关都需要满足以下的
功能
和特性:
请求路由、服务注册、
负载
均衡、弹力服务、
安全
、高
性能
和高可用
。
请求路由
当客户端请求过来,调用端无需知道自己实际调用的其它服务地址,统一交给 Gateway 来处理,避免了内部多个微服务直接对外暴露。
服务注册
网关的服务注册
功能
,就是为后端的服务实例提供服务的地址注册、取消注册,也就是注册一些
API
接口。这样 Gateway 就可以根据接收到的请求中的信息来决定路由到正确的后端服务上。
负载
均衡
一个网关用于接收多个服务实例,所以网关还需要在各个对等的服务实例上做
负载
均衡策略。常见的策略就是 Round-Robin 轮询、权重和最少使用。
弹力服务
网关应该让应用服务只关心自己的业务逻辑,要引入异步、重试、幂等、流控、熔断和监视等弹力服务手段。
安全
外界访问的第一步就是网关,其安全要求毋庸置疑。打头阵的网关作为全系统第一道防线对后端的服务进行保护,基本要满足SSL
加密
及证书管理、Session 验证、授权、数据校验,以及对请求源进行恶意攻击的防范。
4、网关落地
了解了大概的网关设计思路,可以根据公司项目业务需求进行技术选型,现主要分为
流量网关
和
业务网关
两大类。
流量网关
流量网关,大致就是控制流量进入集群的一类网关,比如一个服务集群有很多非法或无效的请求,需要将请求拒之门外,降低集群的流量压力。
业务网关
业务网关更注重与
服务器
应用层交互,如各个微服务的权限控制、
日志
输出、数据
加密
和熔断限流等。
5、常见的开源网关
OpenResty
OpenResty是一个流量网关。
OpenResty是基于 Nginx与 Lua 的高
性能
Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的Web 服务和动态网关。
Kong
Kong 是基于OpenResty开发的一个流量层网关,是一个
云原生
、快速、可扩展、分布式的Api 网关。
Kong继承了OpenResty的高
性能
、易扩展性等特点,且支持通过简单的增加机器节点,可以很容易的水平扩展。
Kong优化了网关的访问限制、安全、流量控制、分析
监控
、
日志
、请求转发和合成
功能
相关功能。
Kong更加专注于全局的Api管理策略,如全局流量
监控
、
日志
记录、全局限流、黑白名单控制、接入请求到业务系统的
负载均衡
等。
Zuul1.0
Zuul是Netflix开发的一套通用
API
网关,Zuul1.0采用同步阻塞架构,优化后的Zuul2,用Netty Server代替Servlet,升级为异步非阻塞架构。
Zuul使用了一系列不同类型的过滤器,够快速灵活地将动态路由、监视、弹性和安全性等功能应用到服务中。
Zuul提供了一个动态读取、编译和运行这些过滤器的框架。过滤器之间不直接通信,而是通过每个请求特有的RequestContext共享状态。
Spring Cloud Gateway
SpringCloud Gateway 是Spring Cloud 生态系统中的网关,底层使用了高性能的通信框架Netty,其目的就是为微服务架构提供一种简单有效的统一的
API
路由管理方式,替代 Zuul 实现微服务全家桶技术栈。
Spring Cloud Gateway 不仅提供统一的路由方式,并且基于 Filter 链的方式提供了网关基本的功能,例如:安全、
监控
/指标、集成熔断和限流。
侯门一入深似海
从此萧郎是路人
回复
使用道具
举报
返回列表
浏览过的版块
物联网
鸿蒙
数据仓库与分析
虚拟化与私有云
Oracle
开源技术
DevOps与敏捷开发
主机安全
区块链
万有斥力
+ 我要发帖
登录后关闭弹窗
登录参与点评抽奖 加入IT实名职场社区
去登录
微信订阅号
微信服务号
微信客服(加群)
H5
小程序
快速回复
返回顶部
返回列表