这个。。。。。不只是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系统工作,有空再晒图。
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn