API网关和ESB的联系与区别( 三 )


文章插图
 

  • API生态
如今企业面临更多的挑战,企业发展需要可靠的合作伙伴 。企业与合作伙伴以 API 的形式进行服务、能力和数据的交互,系统与系统直接对接,达成深度合作,建立牢固的合作关系 。将API接入阿里云市场以API的形式开放能力、服务、数据供广大开发者采购使用,产生价值,在API市场,采购第三方成熟的能力和服务,避免平铺式开发,专注专业,借力发展 。
API网关和ESB的联系与区别

文章插图
 
  • 多端兼容
随着移动、物联网的普及,API需要支持更多的终端设备,以扩充业务规模,但同时也带来系统复杂性的提升 。通过API网关可以使API适配多端,企业只需要在API网关调整API 定义,无需做额外工作 。企业只需维护一个服务体系,面向多端输出,只需调整API定义,即可实现对App、设备、web端等多种终端的支持,这就避免多个场景多套API,大大降低管理运维成本 。
API网关和ESB的联系与区别

文章插图
 
  • 系统集成
在快速发展的过程中往往不成体系、重复开发、烟囱式建设,造成资源冗余和浪费,通过API网关对系统间接口进行规范统一,用标准化的接口实现系统集成 。
API网关和ESB的联系与区别

文章插图
 
通过上面四个场景可见,API网关的作用还是很大的,可以统一管理API,使用统一的API平台来统一管理这些API接口,提供统一通信协议、API文档以及SDK,将大大提升公司内部部门间协作的效率 。
2ESB适用场景
  • 应用集成
实现异构系统的对接,连接现有各孤立的应用系统 。包括服务之间的信息交换,协调各种应用和数据之间的服务传输协议,转换应用数据和服务之间的消息/数据格式,任何的应用系统都是通过应用集成平台与其它系统交互的 。
API网关和ESB的联系与区别

文章插图
 
典型场景:
1.费用报销与薪资对接;
2.生产系统与ERP系统对接;
3.业务和财务一体化,应用系统跟财务系统凭证对接 。
  • 数据集成
负责业务数据上传、汇聚,基础数据(主数据)的下发、分发 。AEAI ESB应用集成平台作为数据交换平台支持应用间批量数据交换和数据库间的数据交互,包括数据的抽取、转换和导入操作 。同时MDM不需要向不同的业务系统请求主数据的获取、同步,只需要通过AEAI ESB进行数据分发、下发等操作即可获取这些数据 。
API网关和ESB的联系与区别

文章插图
 
典型场景:
1.企业数据整合或数据中心建设;
2.数据交换平台项目,辅助主数据管理项目做基础数据分发 。
  • 服务平台
用于微服务体系架构中的Rest服务开发、API网关、服务代理、服务监控、服务统计、服务超市 。具体表现为分布式部署的ESB(可以放置于Docker容器中),实现微服务体系架构下的Rest服务开发、Rest服务组合、Rest服务代理,通过管理控制台注册代理其它系统提供的Rest服务,提供对Rest服务的运行监控、服务的启停功能、对代理服务每次调用情况的监控等 。
API网关和ESB的联系与区别

文章插图
 
典型场景:
1.前后端分离技术架构下,做为Rest服务的开发平台;
2.OpenAPI运作模式下的服务治理、监控、统计、流量控制 。
  • 平台协同
从业务系统实时获取相关数据,为Portal提供数据服务、BPM提供数据回写,协作MDM、IDM做数据分发,为其它平台提供数据基础和服务注册查询 。ESB企业服务总线对SOA整合架构的实现起到支撑作用,数据门户中,ESB从业务系统实时获取相关数据以XML或者JSON格式为门户平台中各图表组件、表格组件提供数据服务;业务流程重组中,ESB负责从各异构系统中动态获取表单数据,以JSON方式为BPM提供业务数据,在流程审批操作时,实现业务数据状态的回写等 。
API网关和ESB的联系与区别

文章插图
 
典型场景:
1.企业业务流程重组项目支撑BPM实现应用对接机制;
2.统一门户中为图表、列表、表格等前端展现组件提供数据服务;
3.SOA综合集成项目,支撑各个平台,为其提供服务 。
区别联系分析1ESB与API网关联系


推荐阅读