【PPT解析】API网关在大数据开放共享方面的应用
现在关于大数据的说法很多,比如数据是新的石油;数据是一种能源;或者像马云说的人类正在从IT时代走向DT时代。数据越来越多,各国的政府也都在推动政务数据的开放,咱们中国就是其中的积极分子。那么问题来了,企业和公共服务机构的数据如何二次利用呢?数据开放有很多种形式我们该如何选择?本文涉及到:数据开放共享、API网关、API全生命周期管理(PPT下载链接http://hadoopsummit.cn/archives/session/api网关在大数据开放共享方面的应用)。
大数据开放共享目的。
大数据开放共享的形式为应用、文件、数据库、API。本文主要讲一下API的数据分享形式。
数量的快速发展;移动应用和云服务大量使用API;API越来越被物联网所依赖,以及国务院国务院印发《促进大数据发展行动纲要》都将成为API的重要趋势。
企业正通过API经济重塑商业模式,例如保险、金融、交通、智能家居、智能汽车、物联网、工业4.0 等,将会更多使用API。2016年美国50%的B2B贸易通过Web API完成 (Gartner)。
API数据开放平台难点:
以上三个方面都是经常出现的问题。我们怎么克服的呢?
API要这样开发才会很愉快…;
- 统一的规范
- 自动生成文档、SDK、后端
- 统一的认证方式,不用重复实现
- 自动生成测试服务
- 前后端开发分离、无缝衔接
- 新老版本无缝上下线,或者多版本同时在线,逐步下线老版本
- 方便接入各种云服务,例如可以直接用RunScope 进行API监控而无需复杂的设置
- 配合网关、微服务以及新兴结构化存储服务简化后端开发
API开发和管理方法在变革:人工线改为标准化、自动化;
API管理和开发的最佳实践
API完整生命周期
API平台的管理体系
API平台的技术架构
API网关(Gateway):将所有API共性的功能统一放在Gateway上实现
1.认证授权:OAuth2、OpenID、API Key、IP限制
2.传输安全:SSL、TLS
3.流量控制:配额、过载保护、频率限制
4.威胁防护:防抓站、防撞库、DDoS/CC防护
5.编排转换:服务分组、7层路由、协议格式转换
6.监控分析:访问量实时统计、性能监控、访问分析
7.统计计费:针对不同⽤户、不同API分组
8.缓存加速:毫秒级缓存、请求队列、异步化
API设计和开发:后端只负责数据的计算和输出,前端负责数据组织和展现。问题:
- 最后集成时商量好的数据结构发生了变化,需要反复
- API没有统一标准,前端⼈员花时间读文档和适配,重复性工作
- 前端需要等待后端完成API开发才能集成,说好的并行开发呢?持续集成、持续交付、快速迭代如何实现? 前后端并行开发又如何实现? 随着移动App开发的兴起,Swagger、RAML等描述语言和工具出现了。
OAI:Open API 计划(OAI)由前瞻性行业专家组成的联盟创建,他们认识到标准化REST API的标准的巨大价值,致力于推广其统一的 API 描述格式(Swagger)。 SmartBear 将 Swagger 规范直接捐赠给 OAI 作为其规范的基础。
Swagger: 规范而完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务,它由文档生成器、编辑器、代码生成器以及很多第三方工具组成。
其他可供参考的资源。
参考链接:
- https://www.openapis.org/
- http://swagger.io/
- http://www.infoq.com/cn/articles/document-description-formats-web-apis?winzoom=1
支持Swagger的云服务:
- Baishancloud:http://juhe.baishancloud.com/gateway.html
- SwaggerHub:https://swaggerhub.com/
- Akana:https://www.akana.com/
- Runscope:https://www.runscope.com/
- Restlet:http://restlet.com/
- Soapui:https://www.soapui.org/
- Axway:http://axway.com/
- Stoplight:http://stoplight.io/
- Postman:https://www.getpostman.com/
- Apigee:https://apigee.com
(因网站无法做超链接,建议复制查看)