新特性
协议转换功能上线,支持HTTP与gRPC、HTTP与Dubbo2之间的协议互转
Apinto v0.10.0已经支持了多协议的基本功能,进行了多协议支持的一次验证。
在不久前,我们通过社区调研了解到,大部分使用者更期望能够进行协议的互转,尤其是 HTTP 转 gRPC 。我们可以通过Apinto对外开放HTTP接口,使用 HTTP转gRPC插件 进行内外部请求的转换,以此来满足开放企业内部gRPC接口的需求。
在本次版本,我们新上线了四个插件,用于协议之间的互转,如下:
- eolinker.com:apinto:grpc_to_http :将客户端 gRPC请求 转换成 HTTP请求 转发给上游服务,并将上游服务的 HTTP响应 转换成 gRPC响应 转发给客户端
- eolinker.com:apinto:http_to_grpc :将客户端 HTTP请求 转换成 gRPC请求 转发给上游服务,并将上游服务的 gRPC响应 转换成 HTTP响应 转发给客户端
- eolinker.com:apinto:dubbo2_to_http :将客户端 dubbo2请求 转换成 HTTP请求 转发给上游服务,并将上游服务的 HTTP响应 转换成 dubbo2响应 转发给客户端
- eolinker.com:apinto:http_to_dubbo2 :将客户端 HTTP请求 转换成 dubbo2请求 转发给上游服务,并将上游服务的 dubbo2响应 转换成 HTTP响应 转发给客户端
新增 编码转换器(transcode) 模块
该模块主要用于对 客户端请求/服务端响应 内容进行编码转码操作,如:protobuf编码转换器。
在实现 Grpc协议和Http协议 的协议转换功能时,需要用到protobuf编码转换器,转换关系如下图所示
未来我们将支持更多的编码转换器,满足更多使用场景。
接入Prometheus
1、新增了Prometheus输出器:
能够配置多个自定义的prometheus指标来收集请求的信息。
具备以下特性:
- 包含请求总数,请求耗时等九种收集类型
- 可自定义指标的收集数据的类型
- 可自定义指标的标签
2、新增Prometheus插件
通过给路由配置该插件,当请求到达网关时,能够将请求的信息和配置的指标列表发送给指定的prometheus输出器,由各个prometheus输出器内同名的指标处理并采集请求内的信息。
Apinto-Dashboard变更
此外,Apinto-Dashboard v1.2.0-beta 同步更新,该版本新增文件上传功能。
写在最后
目前Apinto 及其周边项目已经开源,我们希望通过Apinto强大的插件拓展能力,用户可像乐高积木一样根据需要自行拓展Apinto的插件,以满足不同的业务市场需求。
Apinto 目前属于萌芽阶段,我们希望集合广大开源爱好者的力量,与大家一起讨论方案,接受大家的批评指正,一起将产品打磨完善,做下一个端与端间的Traffic Middleware。
这是一个开放和积极的项目,我们诚挚地邀请您一起参与到我们的项目开源工作中。每一个贡献都是有意义的,包括但不限于:
- 查找bugs,取得性能上的提升
- 帮助完善文档,提供用户操作体验
- 提交你们的issue,让我们知道您的奇思妙想
- 参与自定义插件的开发,丰富apinto的能力
- …
欢迎各位开源爱好者参与到Apinto 项目中,和我们一起为开源事业贡献自己的力量。
联系我们