62

谈API网关接口适配(7.15)

 4 years ago
source link: https://www.tuicool.com/articles/yM3iayu
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

VRre2qZ.jpg!web

这篇谈下API网关提供的接口适配,虽然不会像ESB服务总线那样提供各种复杂的适配器,但是一些经常会使用到的适配能力还是需要提供,以方便实现API接口的快速开发和接入能力。

最常见的-API Rest接口服务的代理接入能力

对于Http Rest API接口服务接入是API网关提供最常见的接口服务接入和适配能力,这里面一种是存代理方式接入或透传,一种是在接入过程中还需要进行适度的数据裁剪和数据丰富。不论是哪种接入,都可能存在在接入过程中增加API网关标准管控所需要的类似SysID,Token等信息。

DB数据库的适配接入

即当前一些API网关会提供的,可以将DB数据库表快速的发布为Rest接口服务,常见的包括了数据库表对象的CRUD主流操作。同时我们看到,完全可以实现一个通用的Http Rest接口服务,对所有的数据库表实现类似的操作能力,但是本身也存在安全管控的风险。

第二种是提供一个类似Sql模糊查询的关联查询接口服务接入能力,即模糊动态查询条件,对于查询结果可能是后台多个表的关联查询,对于具体的查询Sql由用户自己定义。

第三种也是经常会遇到的就是,对于复杂业务对象直接发布为Rest接口服务,一个复杂业务对象实际是后台数据库多张数据库表构成,表之间可以是一种层次结构,也可能是一种关联结构。对于这种方式,当前一般的API网关实际上并不支持,但是实际是经常会遇到的一个DB数据库快速接入和适配的场景。

将遗留的SOAP WS服务接口自动转换为Http Rest接口服务接入

对于遗留的SOAP WS服务接口,应该提供快速的服务适配和接入能力,即将SOAP接口自动转换为一个Rest API接口服务接入,同时将消息报文结构由XML转换为XML或Json数据结构。

服务编排和组合服务接入

这个是主流的API网关也会通过的服务注册接入能力,即将已有的多个API服务接口进行服务组合和组装,变成一个组合服务再发布出去,在这个过程中完成多个服务的整合和数据映射,这个在前面多篇文章里面都谈到了服务编排的关键点。

对于服务编排和组合接入,一般还是需要提供可视化的服务编排设计器来完成服务编排接入。服务编排的场景即场景的服务串联,服务组合,服务合并和拆分。

消息中间件的消息接口发布为Http Rest接口服务能力

这个也是API网关应该提供的一个API接口服务快速发布的能力,即将已有的消息中间件的消息接口快速发布为一个Http Rest接口服务。即调用API接口将数据写入到消息中间件而不是数据库,对于消息的订阅则仍然可以走传统的JMS消息订阅接口进行。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK