Eolink 旗下 Apinto 开源网关再次更新啦~ 一起来看看是否有你期待的功能!
1、协议转换功能上线
之前发布的 Apinto v0.10.0 已经支持了多协议的基本功能,实现多协议支持的一次验证。本次最新版本可以支持 HTTP 与 gRPC、HTTP 与 Dubbo2 之间的协议转换。
在不久前,我们通过社区调研了解到,大部分使用者更期望能够进行协议的互转,尤其是 HTTP 转 gRPC。我们可以通过 Apinto 对外开放HTTP接口,使用 HTTP 转 gRPC插件 进行内外部请求的转换,以此来满足开放企业内部 gRPC接口 的需求。
在本次版本,我们新上线了四个插件,用于协议之间的互转,如下:
1) eolinker.com:apinto:grpc_to_http :
将客户端 gRPC 请求转换成 HTTP 请求转发给上游服务,并将上游服务的 HTTP 响应转换成 gRPC 响应转发给客户端;
2)eolinker.com:apinto:http_to_grpc :
将客户端 HTTP 请求转换成 gRPC 请求转发给上游服务,并将上游服务的 gRPC 响应转换成 HTTP 响应转发给客户端;
3)eolinker.com:apinto:dubbo2_to_http :
将客户端 dubbo2 请求转换成 HTTP 请求转发给上游服务,并将上游服务的 HTTP 响应转换成 dubbo2 响应转发给客户端;
4)eolinker.com:apinto:http_to_dubbo2 :
将客户端 HTTP 请求转换成 dubbo2 请求转发给上游服务,并将上游服务的 dubbo2 响应转换成 HTTP 响应转发给客户端。
2、新增编码转换器 transcode 模块
该模块主要用于对 客户端请求/服务端响应 内容进行编码转码操作,如:protobuf 编码转换器。
在实现 gRPC协议 和 HTTP协议 的协议转换功能时,需要用到 protobuf 编码转换器,转换关系如下图所示:
未来 Apinto 将支持更多的编码转换器,满足更多使用场景。
3、接入Prometheus
3.1 新增了 Prometheus 输出器
能够配置多个自定义的 prometheus 指标来收集请求的信息。
具备以下特性:
-
包含请求总数,请求耗时等九种收集类型
-
可自定义指标的收集数据的类型
-
可自定义指标的标签
3.2 新增 Prometheus 插件
通过给路由配置该插件,当请求到达网关时,能够将请求的信息和配置的指标列表发送给指定的 prometheus 输出器,由各个 prometheus 输出器内同名的指标处理并采集请求内的信息。
4、Apinto-Dashboard 变更
此外,Apinto-Dashboardv1.2.1-beta 同步更新,该版本新增文件上传功能。
Apinto 官网 :https://www.apinto.com/
Apinto Github :https://github.com/eolinker/apinto