• 快捷搜索
  • 全站搜索

API开放平台高性能技术探索与实践

2016-09-07 07:48:18作者:中国工商银行软件开发中心 赵叶红编辑:金融咨询网
API开放平台指企业将内部的数据或服务,通过API的方式提供给内部分支机构或合作方调用,实现一种敏捷的、可伸缩的服务模式。为适应近年兴起的API经济商业生态新模式,工商银行将API开放平台建设定位为“IT架构转型”的重要任务之一。

目前API经济的发展非常迅猛,各种服务提供者将自身的数字资产或者服务用API的形式提供给第三方,通过创造新的资产或者服务的方式,获取到边际效用倍增的商业价值,并由此催生出新的经济形态。

        API开放平台指企业将内部的数据或服务,通过API的方式提供给内部分支机构或合作方调用,实现一种敏捷的、可伸缩的服务模式。为了适应近年兴起的API经济商业生态新模式,工商银行将API开放平台建设定位为“IT架构转型”的重要任务之一。

一、API开放平台

        1、Open API

在互联网时代,把网站的数字资产或服务封装成一系列计算机易识别的数据接口对外开放,供第三方开发者使用,这种行为就叫做“Open API”,提供开放API的平台就被称为“开放平台”。通过开放平台,网站不仅能提供对Web网页的简单访问,还可以进行复杂的数据交互,将Web网站转换为与操作系统等价的开发平台。第三方开发者可以基于这些已经存在的、公开的Web网站而开发丰富多彩的应用。

         2007年Facebook开始进行开放平台建设,国内厂商也紧随其后,当前国内业界API开放平台建设情况如图1所示。

图片1.jpg

 

        2、业界API平台原型

        业界API开放平台基础模式架构如图2所示,图中表现了服务提供者与合作方、用户的关系,并描述了服务提供者在建设API开放平台时需要完成的功能。

图片2.jpg

        各企业的开放平台根据自身的业务特点拥有不同的架构,且往往随着业务增长、平台API访问的增长、新技术的出现不断更新平台技术。现以图3所示的腾讯API开放平台架构原型为例进行说明。

图片3.jpg

        LVS: 即Linux虚拟服务器(Linux Virtual Server),是一个虚拟服务器集群系统。

        L5:具有负载均衡、过载保护和容灾功能。

        Nginx:对于某些安全性要求更高的请求(如支付)提供Https协议支持。

        鉴权Server:提供应用鉴权、用户鉴权、访问频率限制等功能。

        API_GW:类似反向代理,提供请求异步转发的服务。

        当请求经过LVS,进入API_GW后,请求会首先被转发到鉴权Server,如果权限校验没有通过,则API_GW会返回错误给应用;如果权限校验通过,则请求会再次被转发进入业务逻辑处理,并最终通过API—GW将数据返回给应用。

二、工商银行API平台建设

        为充分发挥分行及合作方的力量,提升金融服务水平,工商银行通过标准化设计,建设了API开放平台与服务集成,为用户提供更多的服务选择。对内,通过API开放平台向分行提供服务,包括对分行开放主机接口服务,总行级移动金融应用向分行开放的服务等。对外,实现服务的封装、合作方的认证等,打造—个高效的合作开发环境。

        1、平台定位

        API开放平台具有显著的渠道特性和服务于开发者的特性,为此将API开放平台定位为渠道接入层的一部分,负责将其他各层中的服务对外发布(如图4所示)。

图片4.jpg

 

         API开放平台发布的服务既可以是在服务集成层完成了服务标准化处理的服务,也可以是具体的应用中的服务。API开放平台主要为分行用户、合作方用户和公众用户提供服务。

         2、总体架构

        API开放平台主要由三个部分组成:API管理模块、API网关、API开发者门户(如图5所示)。

图片5.jpg

 

        API管理模块:用户为行内人员,包括API的开发设计人员和API开放平台的运行管理人员。开发设计人员通过管理模块,进行API的定义、审批、发布等方面的工作;运行管理人员对API开放平台的运行情况、资源情况进行监控、分析和管理。

        API网关:负责API的物理接入,完成和实际服务的交互。同时实现包括准入控制、安全管理、流量控制等方面的处理。

        API开发者门户:主要针对用户服务。一方面提供API相关的资料并提供开发者社区化交互的工具(如论坛),另一方面作为开发者管理门户,实现用户、应用的申请审批,并提供API功能测试入口。

       (1)API管理模块

        API管理模块通过一系列的功能全方位地实现各个角色在API设计、发布、部署、控制、分析等环节的全面管理(如图6所示)。API管理模块包括API信息管理、参数管理、运行监控、统计分析等。

图片6.jpg

 

         (2)API网关

        API网关由接入、控制、转换、调用四部分组成(如图7所示)。API网关在实际生产环境中保障API的正常调用,并负责将API管理模块的安全与控制策略应用到网关,完成安全、流量控制、服务调用的处理。

图片7.jpg

 1 2 下一页 尾页

扫码即可手机
阅读转发此文

本文评论

相关文章