Releases: eolinker/apinto
v0.8.1
多协议底层支持,应用、插件模板模块上线
路由规则格式修改
改动前:一个路由支持配置多组路由规则
旧版路由规则配置(此处使用Apinto Dashboard示例)如下图所示:
改动后:一个路由仅支持配置一组路由规则
新版本路由规则配置(此处使用Apinto Dashboard示例)如下图所示:
多协议底层支持
通过对Eosc底层改动,Apinto支持端口协议复用,为后续Apinto支持gRPC、WebSocket、TCP等多种通信协议奠定底层基础。
新增模块:环境变量
可使用变量的范围
-
流程规定的Profession:
- 路由
- 上游服务
- 服务发现
- 输出器
- ......
-
拓展相关
- 全局插件
- 绑定路由的插件
- ......
-
配置选项
- Formatter
- 标签(Labels)
- ......
变量支持的数据类型
-
String
-
Int
-
Float
-
Number
-
Bool
格式
注意事项 :
-
变量以工作域进行分组,相同工作域中的变量全量发布,不同工作域的变量可分开发布
-
可以按需引用
-
支持一段配置多个变量
在需要使用到变量的地方填写 ${变量名@工作域} ,缺省时工作域为:default,支持一段配置多个变量
比如控制台中发布了以下变量
变量名 | 变量值 |
---|---|
var1 | a |
var2 | b |
var3 | c |
在创建路由时,将路由规则的location字段设置为**/router/${var1}** ,实际生效的值为**/router/a**
新增模块:插件模版
该模块用于统一配置插件,生成可复用的插件模版。多个路由可以绑定同一个插件模版,以减少重复配置操作。
插件模版配置示例如下:
路由绑定插件示例如下
新增模块:应用
应用是对请求来源的抽象概念,其可以是一个客户端App,也可以是一个后端服务,还可以是Web App......
请求达到网关时,会先进行鉴权检验,鉴权通过后,将匹配唯一应用,并进行应用设置的规定行为,包括但不限于流量限制、数据修饰(额外参数、格式转换等)、访问控制等。
新增插件:应用(eolinker.com:apinto:plugin_app)
该插件用于控制应用模块的生效范围,若需要使应用模块生效,则需要在全局插件中新增该插件,并设置插件生效范围(enable 或 global )。
删除模块:鉴权
鉴权模块在v0.8.0中删除,鉴权相关操作将转移到应用模块中。
删除插件:鉴权(eolinker.com:apinto:auth)
鉴权插件在v0.8.0中删除,鉴权相关操作将转移到应用模块中。
修复文件转发时内容没有传输的问题
v0.7.2 修改eosc依赖版本为0.6.2
修复插件的一系列问题
1、修复流控插件每天请求次数相关信息未返回的问题
2、修复服务器返回的gzip响应体内容解析失败的问题
3、修复输出器无法引用鉴权标签的问题
raft算法升级
1、升级raft算法,将kv存储替换成etcd内置的kv实现
注意:由于raft算法升级,旧配置不兼容,若之前使用的 apinto为0.6.x及更老的版本,需要使用apinto-import进行升级
2、修复文件日志驱动配置错误时,删除操作阻塞的问题
3、新增proxy_rewrite_v2插件
4、服务发现忽略scheme字段
修复0.6.3版本发现的一系列问题
1、修改额外参数插件value类型
2、修复cli命令操作失败无日志输出的问题
3、修复output拓展缺少CheckSkill方法,导致apinto dashboard不能联动的问题
修改默认配置文件及mod依赖
v0.6.3 修改mod文件
合并服务和上游模块
修复路由header规则读取失败的问题
Merge pull request #57 from chen2eric/feature/fix_default_port change default port
支持可视化UI界面
- 进程模型优化,新增admin进程,提供openAPI及渲染模版内容
进程名称及其作用如下:
- master进程:
- 类型:常驻进程
- 作用
- 守护进程,管理子进程的启停
- 负责Raft集群的通信与同步
- Cli命令交互
- openAPI流量入口,监听管理端口
- 将openAPI请求转发到leader节点的admin进程中处理
- admin进程
- 类型:常驻进程,仅当节点为leader时启动
- 作用
- 配置态进程,该进程缓存了worker进程运行所需要的所有信息
- 处理openAPI请求,校验请求数据的合法性
- 提供render模版,供dashboard渲染
- worker进程
- 类型:常驻进程
- 作用
- 网关核心进程,执行流量转发的工作流程
- 支持加载外部插件
- 当插件更新/重加载时,该进程会重启
- help进程:
- 类型:临时进程
- 作用:
- 由master启动,处理完临时任务后停止
- 当执行安装/升级拓展时,会优先启动该进程校验拓展的可靠性及合法性
-
丰富openAPI接口,支持页面渲染。开发者可通过修改配置的tag 标签,生成相应格式的Json Scheme 渲染模版,tag 标签内容参考eosc/README.md at main · eolinker/eosc
Dashboard调用流程如下: