API网关跟ESB的联系与区别

本文详细介绍了API网关和ESB(企业服务总线)的相关概念、适用场景和区别。API网关作为进入系统的单一入口,负责服务请求路由、组合及协议转换,适用于API资产管理和多端兼容场景。ESB主要用于企业应用和数据集成,提供异构系统的互联互通。两者在实现方式和功能上有所不同,API网关侧重API管理和流量控制,而ESB更注重服务总线的基础架构和集成服务。
摘要由CSDN通过智能技术生成

1 相关名词剖析

  随着互联网的快速发展,企业的IT建设也是飞速发展的,但是在建设企业信息化时没有统筹考虑,建设往往不成体系、重复开发、烟囱式的建设,造成了资源的冗余和浪费,为了针对这些问题逐渐诞生了SOA、ESB、微服务、API网关以及REST等技术,现针对技术点总结如下。

 1.1 API网关剖析

API 网关是一个服务器,也可以说是进入系统的唯一节点。这与面向对象设计模式中的 Facade 模式很像。API 网关封装内部系统的架构,并且提供 API 给各个客户端。它具备授权、监控、负载均衡、缓存、请求分片和管理、静态响应处理等功能。


API网关负责服务请求路由、组合及协议转换。客户端的所有请求都首先经过 API网关,然后由它将请求路由到合适的微服务。API网关经常会通过调用多个微服务并合并来处理一个请求。它可以在 WEB协议与内部使用的非WEB协议之间相互转换。API网关还能为每个客户端提供一个定制的API,通常它会向移动客户端暴露一个粗粒度的API,以产品详情的场景为例,API网关可以提供一个端点使移动客户端可以通过一个请求获取所有的产品详情。API网关通过调用各个服务(产品信息、推荐、评论等等)并合结果来处理请求。API网关主要功能如下:

  • 使用API网关有优点也有不足,其中使用API网关的最大优点是:
  1. 它封装了应用程序的内部结构。客户端只需要同网关交互,而不必调用特定的服务。
  2. API网关为每一类客户端提供了特定的API,这减少了客户端与应用程序间的交互次数,还简化了客户端代码。
  • API网关的不足之处在于:
  1. API网关增加了一个我们必须开发、部署和维护的高可用组件。
  2. API网关变成了开发瓶颈。为了暴露每个微服务的端点,开发人员必须更新 API 网关。API网关的更新过程要尽可能地简单,否则为了更新网关,开发人员将不得不排队等待。

1.2 ESB服务总线

其主要作用是作为企业信息系统的“龙骨”来集成各业务系统,实现异构系统的互联互通,用来拉取、调度各个业务系统的数据,一般被称为企业服务总线。ESB提供了网络中最基本的连接中枢,是构筑企业神经系统的必要元素。


ESB提供了一种开放的、基于标准的消息机制,通过简单的标准适配器和接口,来完成粗粒度应用和其他组件之间的互操作,能够满足大型异构企业环境的集成需求。
通过使用ESB,可以在几乎不更改代码的情况下,以一种无缝的非侵入方式使企业已有的系统具有全新的服务接口,并能够在部署环境中支持任何标准。充当缓冲器的ESB(负责在诸多服务之间转换业务逻辑和数据格式)与服务逻辑相分离,从而使得不同的应用程序可以同时使用同一服务,不用在应用程序或者数据发生变化时,改动服务代码。
ESB产品作为一个产品化的产物,不仅仅是解决一些基础的问题,产品自身还会在项目中不断完善和发展。ESB会把各行各业的解决方案用到的内容逐渐丰富到产品中,随着项目、行业的增多ESB的功能也越发丰富,可以应对不同行业的不同需求,随着近期微服务的兴起,ESB也进行迭代更新,我们的ESB更新了微服务的开发、编排、注册等功能,下文则是微服务的主要介绍。

1.3 微服务剖析

微服务是近些年被广泛提及的一个概念,微服务产生于单体应用的扩大化,随着信息化不断发展,企业对软件功能的要求越来越具体,也愈发的细致,如果通过应用程序来实现,必然是一

  • 8
    点赞
  • 62
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值