API快速开发平台设计思考

本文探讨了API快速开发平台的设计,强调API全生命周期管理的重要性。API开发平台包括API开发、网关引擎、监控运维和全生命周期管控四大子系统,负责API的开发态、运行态和运维态。平台采用对象建模驱动,支持数据库对象的API接口发布,并提供了对象适配、接口模拟测试、文档生成等功能。此外,还讨论了服务组合和编排、源代码导出以及微服务应用的打包和部署。
摘要由CSDN通过智能技术生成

在我之前谈API网关的时候曾经谈到过快速开发平台,即将API快速开发的一些内容放入到API网关中,实际来看围绕API全生命周期管理,本身包括了开发态,运行态,运维态。

对于API网关更多的是解决运行态的问题,API网关本身应该轻量化设计,不做太多的协议转换,适配,数据映射等工作,这些工作应该放到API开发平台来完成。API开发平台最终就是开发完成并暴露一个标准的Http API接口,并将接口注册和接入到API网关。

API全生命周期管理

围绕API全生命周期管理来看,整个子系统划分如下:

1.png


简单来讲这部分可以分解为四个子系统,即API开发平台,API网关引擎,API监控运维平台,API全生命周期管控平台。

对于传统ESB总线里面的适配器,协议转换等相关比较重的内容,都可以转移到API快速开发平台来完成,即API开发平台暴露标准的API服务接口,注册和接入到API网关引擎。而对于API监控平台则从引擎采集日志信息,进行API性能监控和日志监控分析。

API全生命周期管控平台实现API接口从设计,开发,测试,部署上线的全生命周期管理,也可以理解为底层三个子系统的一个统一管理门户,实现和下面三个子系统集成。

对于API开发平台开发和配置完成的微服务API接口,可以支持自动部署到微服务运行平台。

基于对象建模驱动

2.png


在整个API开发平台实现中,核心思想仍然应该是基于对象建模驱动,通过对象建模很好的实现接口和底层数据库,数据库表之间的解耦,也方便实现底层多数据库,多表的支持能力。

当前很多API快速开发平台都是基于数据库对象或表,直接发布类似CRUD的API接口服务,但是基于是数据库表的直接发布,我们仍然建议逆向对象这层,方便后续在对象层进行相关的组合,规则扩展等操作。

对象建模和API接口契约

可以直接在API开发平台创建对象,并对数据项进行定义,对象是一个多层的树状结构实体。一个对象可以向数据库生成多张表。对于已经存在的数据对象,也可以进行组合,将多个组合为一个复合对象结构。

对象的好处即是一个完整的对象属于同一生命周期,可以一起进行事务控制。

一个设计好的对象可以默认生成标准的POST,GET,DELETE等接口操作方法,类似下图,整个对象接口契约的生成也应该是自动的。

3.png


定义好的对象可以直接生成类似RAML,YAML,WADL等接口契约文件。

类似Swag

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值