憋了那么久,Eolink 旗下 Apinto 开源网关再次更新啦~ 一起来看看是否有你期待的功能!

1、协议转换功能上线

之前发布的 Apinto v0.10.0 已经支持了多协议的基本功能,实现多协议支持的一次验证。本次最新版本可以支持 HTTP 与 gRPC、HTTP 与 Dubbo2 之间的协议转换

在不久前,我们通过社区调研了解到,大部分使用者更期望能够进行协议的互转,尤其是 HTTPgRPC。我们可以通过 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-Dashboard v1.2.1-beta 同步更新,该版本新增文件上传功能。

Apinto 官网:https://www.apinto.com/

Apinto Github 网址:https://github.com/eolinker/apinto

Apinto 网关 V0.11.1 版本发布,多协议互转,新增编码转换器,接入 Prometheus...的更多相关文章

  1. GraphScope v0.12.0 版本发布

    GraphScope 每月进行常规版本的迭代与发布,GraphScope v0.12.0 全新版本在四月如期而至.v0.12.0 为交互式图查询 GAIA 引入全新的 IR 层以及新增 Giraph ...

  2. FreeSql v0.11 几个实用功能说明

    FreeSql 开源发布快一年了,立志成为 .Net 平台方便好用的 ORM,仓库地址:https://github.com/2881099/FreeSql 随着不断的迭代更新,越来越稳定,也越来越强 ...

  3. 支持边云协同终身学习特性,KubeEdge子项目Sedna 0.3.0版本发布!

    摘要:随着边缘设备数量指数级增长以及设备性能的提升,边云协同机器学习应运而生,以期打通机器学习的最后一公里. 本文分享自华为云社区<支持边云协同终身学习特性,KubeEdge子项目Sedna 0 ...

  4. SmartIDE v0.1.17 已经发布 - 模版库远程模式和插件市场公测

    SmartIDE v0.1.17 已经发布,本次同步更新了CLI (Build 3332) 的稳定版通道和Server (Build 3333) 生产环境(内测中).请参考对应的 安装说明 获取最新版 ...

  5. glibc 各版本发布时间以及内核默认glibc版本

    最近有些软件要求glibc 2.14+,centos 6.x自带的版本是2.12的,特查了下glibc 各版本发布时间以及与对应的内核,如下: Complete glibc release histo ...

  6. VisualSVN 4.0.11补丁原创发布

    VisualSVN 4.0.11补丁原创发布 目前是官方最新版本.

  7. RDIFramework.NET ━ .NET快速信息化系统开发框架 V2.8 版本发布

    (新年巨献) RDIFramework.NET ━ .NET快速信息化系统开发框架 V2.8 版本发布 历时数月,RDIFramework.NET V2.8版本发布了,感谢大家的支持. RDIFram ...

  8. RDIFramework.NET ━ .NET快速信息化系统开发框架 V2.7 版本发布

    历时数月,RDIFramework.NET V2.7 版本发布了,感谢大家的支持. RDIFramework.NET,基于.NET的快速信息化系统开发.整合框架,为企业或个人在.NET环境下快速开发系 ...

  9. 【AngularJS】 2.0 版本发布

    [AngularJS] 2.0 版本发布 w5cValidator[AngularJS] 2.0 版本发布   w5cValidator 插件基于angular原有的表单验证,在原有的基础上扩展了一些 ...

  10. CAP 2.4版本发布,支持版本隔离特性

    前言 自从上次 CAP 2.3 版本发布 以来,已经过去了几个月的时间,这几个月比较忙,所以也没有怎么写博客,趁着2019年到来之际(现在应该是2019年开始的时候),CAP也发布了2018年的最后一 ...

随机推荐

  1. 微服务11:熔断、降级的Hystrix实现(附源码)

    微服务1:微服务及其演进史 微服务2:微服务全景架构 微服务3:微服务拆分策略 微服务4:服务注册与发现 微服务5:服务注册与发现(实践篇) 微服务6:通信之网关 微服务7:通信之RPC 微服务8:通 ...

  2. Python免杀过360

    本文章仅供参考学习 作者:mantou 博客地址:https://www.cnblogs.com/mantou0/ 分离免杀 这个我就不多说了,效果确实不错,网上关于分离免杀的也有很多文章 不分离过3 ...

  3. 洛谷P2196例题分析

    [NOIP1996 提高组] 挖地雷(原题) 题目描述 在一个地图上有\(N\)个地窖\((N \le 20)\),每个地窖中埋有一定数量的地雷.同时,给出地窖之间的连接路径.当地窖及其连接的数据给出 ...

  4. day11-功能实现10

    家居网购项目实现010 以下皆为部分代码,详见 https://github.com/liyuelian/furniture_mall.git 24.bugFix-添加购物车按钮动态处理 24.1需求 ...

  5. MQ系列10:如何保证消息幂等性消费

    MQ系列1:消息中间件执行原理 MQ系列2:消息中间件的技术选型 MQ系列3:RocketMQ 架构分析 MQ系列4:NameServer 原理解析 MQ系列5:RocketMQ消息的发送模式 MQ系 ...

  6. ios网络协议从http变成https

    最近发了一个很蛋疼的事,iphone16.x以后的系统浏览器自动将http请求切换为https请求了 工程自测 1.在ihone14 pro max,iOS16.1的手机上用http请求是失败的,在i ...

  7. angular8实现前端携带cookie发送给后端+nodejs获取前端发送的cookie

    1.前端测试代码angular8 // 测试代码 testCookie() { const url = 'http://10.11.11.11:3000/test/cookie' const para ...

  8. 小白从零到AIoT之路(前言)

    什么是AIoT 简单来说就是AI(人工智能)+IoT(物联网)= AIoT(人工智能物联网). AIoT融合AI技术和IoT技术,通过物联网产生.收集来自不同维度的.海量的数据存储于云端.边缘端,再通 ...

  9. finally代码块-多异常的捕获处理

    finally代码块 finally :有一些特定的代码无论异常是否发生,都需要执行.另外,因为异常会引发程序跳转,导致有些语句执行不到.而finally就是解决这个问题的,在finally代码块中存 ...

  10. 报错One record is expected, but the query result is multiple records

    总结:出现这种情况,显而易见,就是查询的数据在数据库中不止一条,而我调用的selectOne方法,返回值是一个User对象,导致报错 点击查看错误代码 LambdaQueryWrapper<Us ...