Releases: eolinker/apinto
v0.10.1
v0.10.0
New features
- Support multi-protocol forwarding, including Dubbo2 and gRPC protocols.
GRPC route:
Dubbo2 route:
- New plug-ins: Dubbo2 request rewriting, gRPC request rewriting.
GRPC rewrite plug-in:
Dubbo2 rewrite plug-in:
- Fix the problem that the package of amd64 architecture cannot be deployed and installed on the Linux system during packaging.
Version Preview
-
Access to Prometheus monitoring
-
Add protocol conversion plug-in
-
Http to gRPC
-
Http to Dubbo2
......
Changelog
v0.9.1
v0.9.0
新特性
listen:
- 8099 # 服务端口
ssl: # 服务端口的ssl配置
listen:
- port: 8099 ## 端口
certificate: ## 证书配置
- cert: ""
key: ""
admin: # 管理端口配置
scheme: http
listen: 9400
ip: 0.0.0.0
certificate:
key: ""
cert: ""
certificate: # 证书默认目录
dir: /etc/apinto/cert
新版本配置(使用旧配置时会自动充血并初始化新配置)
version: 2 # 配置版本,新版本为2,非 2 当做旧版本
certificate: # 证书根目录
dir: /etc/apinto/cert
client:
advertise_urls: # open api 服务的广播地址
- http://192.168.3.110:9400
- http://192.168.3.116:9400
- http://10.8.0.15:9400
certificate: # 对 https 的证书配置
- cert:
key:
listen_urls:
- http://0.0.0.0:9400 # open api 服务的监听地址
gateway: # 网关服务配置
advertise_urls: # 广播地址
- tcp://192.168.3.110:8081
- tls://192.168.3.116:8081
- tcp://10.8.0.15:8081
listen_urls: # 监听地址
- tcp://0.0.0.0:8081
- tls://192.168.3.116:8081
peer: # 节点通信配置
advertise_urls:
- http://192.168.3.110:9401
- http://192.168.3.116:9401
- http://10.8.0.15:9401
certificate:
- cert:
key:
listen_urls: # 监听地址
- http://0.0.0.0:94001
- 新增监控插件,并支持将请求记录输出到InfluxDB。
- 修改网关连接上游服务默认最大连接数为10240,默认最大连接等待时间为60s,客户端请求体最大为100M
- 输出器驱动新增作用范围配置(scope),默认支持scope:access_log、monitor。
当access log插件output配置为空列表时,scope为access_log的输出器会默认生效。如下:
Bug修复
- 修复匿名应用删除后仍生效的问题
- 修复路由禁用后,缺少提示的问题
Changelog
- ae96619 修改go编译版本为1.19.4
v0.8.5
v0.8.4
v0.8.3
v0.8.2
-
Add anonymous application.
-
Fix the confusion between api key and basic authentication IDs.
-
When the program is started, the service discovers that the failure of node acquisition leads to the downtime of the admin process. #81
-
When the forwarding node list is empty, the 503 status code is returned.
Changelog
- ec6ae0f go mod tidy
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中删除,鉴权相关操作将转移到应用模块中。