这个。。。。。不只是API的问题吧。。。核心(整体)系统在做架构设计的时候就要考虑进去,你现在半路来个只管暴露给外面的,这个框架没多少意义,最多也就管管日志,状态等,新增接口,还是需要和数据提供的系统做很耦合的工作。
国外的话Swagger(Swagger – The World's Most Popular Framework for APIs.), 目前国内做得最好的是EOAPI(EOAPI - 业内领先的接口管理平台)。
利益相关:作者
http://www.easyapi.com EasyAPI服务平台,包括API管理,API测试,API监控。我是创始人。欢迎交流。
在原有api情况下再搞个API管理系统意义不大。其实工程师想要的是一整套API开发框架,所有API都是基于API框架开发,API框架集成基础用户系统,比如开源方案ucenter,API框架本身做到文档自动生成,集成测试助手,错误描述支持多国语言,get请求缓存,restful设计,和gitlab集成 用于版本管理,接着Jenkins 上面自动化pull 版本 单元测试,冒烟测试,压力测试,运行日志分析,提取失败崩溃日志并邮件通知。高端点 可以具体到 某个API 各种版本间的内存占用曲线,相同并发量下请求时间曲线。持续集成扯远了,生产API系统在运行时,可以做到精确到具体api级别的统计 包括所有header信息,没有正常返回结果API进行错误日志记录整理到日志系统并email程序员邮箱,出入网规则则可以做到限制单位时间内各类请求等,比如限制具体的ip或者ip段才可以进行某个API的patch请求,且一小时内5000次请求总量。api支持多种类型请求 如get post patch put delete head,支持多种数据类型返回 比如 xml json jsonp msgpack压缩的格式,提供多种编程语言的sdk,比如我的团队 做移动开发,我提供java objective-c版本的封装类库,第三方团队是搞golang的,封装一个golang版本sdk,API系统支持实时生产pdf epub格式 各个版本下的文档,sdk+sdk文档给客户 而不是把线上那套开放给客户。以上除了持续集成那套,其他都属于API系统工作,有空再晒图。
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn