ApiSix能达到的功能效果

简介: ApiSix能达到的功能效果

页面中的功能

参考:全新一代API网关,带可视化管理,文档贼友好!
官方参考文档:GET START
首先需要明白,API网关是以端口转发的方式进行处理,也就是说,APISIX监听到的端口会作为端口的统一入口,然后在中间做处理、代理和转发。

根据这个前提认识,我们再来谈谈APISIX的使用。
image.png

上游

上游代表实体应用,配置项包含目标节点的主机名和端口。
上游的配置从面向对象的角度来说,可以想象成,定义的实体对象。
image.png
例如,我这里定义了一个8081端口上的应用。

路由

路由里面配置的,就是针对对网关的某个路由的访问,它有什么样的行为。例如,我配置了一个对上述应用的转发,并且配置了一个插件,用来控制单位时间的访问速度。

设置路由信息

image.png

设置上游服务

image.png

插件配置

image.png
点击提交,就生效了。
效果就是,当我在60s内访问超过5次,就会被拦截并返回503。
image.png
image.png

服务

服务由路由中公共的插件配置、上游目标信息组合而成。服务与路由、上游关联,一个服务可对应一组上游节点、可被多条路由绑定。

我的理解是相当于是路由的集合,因为某几个路由可能组成了一个功能,而这里的服务就是指的这样一个功能。

消费者

消费者是路由的消费方,形式包括开发者、最终用户、API 调用等。创建消费者时,需绑定至少一个认证类插件。
创建一个使用jwt-auth的消费者。
image.png
再次创建一个路由,不管前面两项怎么处理,只需要在选择插件的时候打开jwt-auth即可,因为全局配置了,所以这里不需要再配置。
直接访问配置的路由(我配置的是/auth/*)
image.png
现在我们需要去找jwt token,访问

curl http://127.0.0.1:9080/apisix/plugin/jwt/sign?key=user-key -i

获取到的值为
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJrZXkiOiJ1c2VyLWtleSIsImV4cCI6MTY0NTIwMDczOH0.i3hJwQ1m9rpDAFT9P4MxKwq3A4H_3EAfi5gaAICRr6o

带上访问
image.png
虽然结果是404,但是至少是过去了的。

因为目前还没有深入使用,所以个人觉得消费者似乎是一种全局配置,专门用于认证相关的。而这个消费者这个词儿的定义似乎是对接口来说的,就是接口的消费者,所以要对接口的消费者进行鉴权处理。

目录
相关文章
|
8月前
|
负载均衡 应用服务中间件 API
Nginx、Kong、Apisix、Gateway网关比较
Nginx、Kong、Apisix、Gateway网关比较
1512 1
Nginx、Kong、Apisix、Gateway网关比较
|
6月前
|
存储 Kubernetes API
apisix~为自定义插件设计一个configmap脚本
Kubernetes ConfigMap*是一种资源对象,用于存储非敏感配置数据,如环境变量和配置文件,解耦配置与应用,支持动态更新。它可以被挂载到Pod中,跨Namespace共享。通过`kubectl create configmap`命令创建。例如,一个apisix插件配置可能包含3个lua文件,通过`kubectl create configmap`命令将它们整合到一个ConfigMap中供apisix使用。ConfigMap不同于Secret,用于存储非敏感信息。
|
7月前
|
Apache
apisix~14在自定义插件中调用proxy_rewrite
在 Apache APISIX 中,通过 proxy-rewrite 插件来修改上游配置时,需要确保插件的执行顺序和上下文环境正确。你提到在自己的插件中调用 proxy_rewrite.rewrite({host="new_upstream"}, ctx),但新上游没有生效,这可能是由于以下几个原因: 1. 插件执行顺序:确保你的自定义插件在 proxy-rewrite 插件之后执行,proxy-rewrite.priority是1008。
|
缓存 负载均衡 网络协议
一文讲懂Nginx常用配置及和基本功能
一文讲懂Nginx常用配置及和基本功能
590 1
|
8月前
|
Kubernetes 容器
Kubernetes—安装2022新版ingress-nginx步骤
Kubernetes—安装2022新版ingress-nginx步骤
267 0
|
存储 Kubernetes Cloud Native
K8S Ingress 之 Apache APISIX 解析
在云原生时代,基于主流的云操作系统 Kubernetes ,其常见的外部流量访问方式主要基于以下 NodePort、LoadBalancer 以及 Ingress 等。
1102 0
|
中间件 Go 网络架构
Traefik Middleware 插件实践
话说,作为一款开源的边缘路由器,Traefik 或多或少算是一款比较牛逼的新生代组件,其不仅可以作为接入层组件,实现流量转发等相关功能,同时也可以支撑网关层的相关功能,尤其是 2.x 版本中的自定义中间件功能。
440 0
|
Kubernetes 应用服务中间件 nginx
编排系统K8S Ingress-nginx源码解析
上篇文章介绍了Ingress-nginx的基本架构原理,具体可参考: 编排系统K8S Ingress-nginx介绍 本篇重点以源码为基础,深入讲解 Ingress-nginx的内部工作流以及整体工作模式。
287 0
|
负载均衡 Cloud Native 测试技术
Postcat X APISIX 合作插件 :一键同步,轻松配置到 APISIX
用户只需要安装此插件,即可轻松地将 Postcat 产品中管理的 API 相关配置的数据同步到开源网关 APISIX,实现一键发布 API 的效果。
|
Prometheus 监控 Cloud Native
traefik监控基础配置
traefik监控基础配置
656 0
traefik监控基础配置