一、概述
1、什么是ESB
就是企业数据总线的意思,他的核心功能就是兼容各种协议接口,可以将数据在各种协议之间进行流转,并且可以针对数据格式进行编排转换。(格式转换、协议转换、代理、编排、安全控制、监控、不支持高并发,类似于路由器维护着一张路由表进行路由转发)
代表性的项目有:JBOSS ESB,Mule,Camel 以及一些其他的esb项目

2、什么是服务注册
就是将所有的服务接口(很多时候是hession协议的接口),注册到一个中心的分布式服务集群上(你可以考虑成apache的zookeeper服务实现的效果)。各个业务系统直接访问分布式服务查找需要调用的接口位置,进而调用。(注册目录服务、监控、负载均衡、安全控制、分布式强健壮、适用于高并发)
代表性开源项目有:阿里的dubbo,淘宝的HSF(现在不知道是否继续开源了)

二、双方特点
1、ESB
ESB一般采用集中式转发请求,适合大量异构系统集成,并且压力不大的情况

但集中式转发也是有优势的,比如调用方用http协议,提供方用rmi协议,转发就可以转换协议,对双方都透明。另外,在总线上还可以执行流程引擎,做服务编排,比如A和B两个服务经常一起调,就可以编排成服务C,而不用再单独启一个服务去做。还有,安全,流控,做起来也更方便。
支持groovy类型的脚本语言,在总线上可以给数据格式做转换
2、服务注册管理
采用的是分布式调用,注册中心只记录地址信息,然后直连调用,适合并发及压力比较大的情况。
对于网站应用,大多是垂直业务,直接从数据库拉数据展示。

三、应用场景
1、ESB
esb最常见的场景是,把系统里的集成逻辑,单拉出来, 放到esb容器里来部署,并跟应用系统适配。 这样让应用系统变得只有自己的业务逻辑,简单、轻薄。
劣势:在所有的服务上增加了一个总线作为沟通的渠道。对于较大的并发量会将瓶颈推到ESB总线上。很多时候ESB总线都采用MQ类的消息服务器来异步处理缓解压力
2、服务注册
淘宝和阿里的各个业务系统提供了很多的接口,这个时候需要统一管理提供个各子业务系统使用,让各个子业务系统可以通过注册中心很快找到对应的服务
劣势:服务编排和协议转换还是靠各个业务子系统了

四、综述
1、两类开源项目侧重点不同,ESB侧重任务的编排,性能问题可通过异构的方式来进行规避。无法支持特别大的并发
2、服务注册侧重服务的治理,将各个服务颗粒化,各个子业务系统在程序逻辑上完成业务的编排。但是比较实用较大的并发量,因为dubbo类的只是存放服务地址。有zookeeper类的分布式通讯框架,能保证单点的失败不影响整个系统的业务调用,因为业务接口都是在各个提供服务的子系统中。

ESB与dubbo的区别相关推荐

  1. SpringCloud与dubbo的区别

    我们来看一下SpringCloud和Dubbo的区别,我们准备了一个表格,会从这五个维度,出身背景,活跃度,文档质量,性能,功能,从5个维度来做SpringCloud和Dubbo的对比 Dubbo它是 ...

  2. esb和eai的区别

    话说SOA也推了很多年了,出现了比如ESB.SCA.jbi等各类技术和标准,乱的很.各类比较也说的云里雾里,在下理一理,按自己的观点说说. 先说说esb和eai的区别. 个人观点:esb就是eai+设 ...

  3. API网关跟ESB的联系与区别

    1 相关名词剖析 随着互联网的快速发展,企业的IT建设也是飞速发展的,但是在建设企业信息化时没有统筹考虑,建设往往不成体系.重复开发.烟囱式的建设,造成了资源的冗余和浪费,为了针对这些问题逐渐诞生了S ...

  4. http和dubbo的区别_(转载)Dubbo 接口是什么? 与http 接口有什么区别

    面试的时候会被问到 除了http  https 请求外 有接触了解到其他的接口么? 一,什么是Dubbo 接口 Dubbo 接口是阿里巴巴开源的致力于提供高性能和透明化的RPC远程服务调用方案,以及S ...

  5. 《springcloud超级入门》Spring Cloud和Dubbo的区别及各自的优缺点《三》

    了解为什么需要微服务.最初的服务化解决方案是给相同服务提供一个统一的域名,然后服务调用者向这个域发送 HTTP 请求,由 Nginx 负责请求的分发和跳转. 这种架构存在很多问题:Nginx 作为中间 ...

  6. Spring Cloud和Dubbo的区别

    底层协议: Spring Cloud基于http协议,dubbo基于Tcp协议,决定了dubbo的性能相对会比较好 注册中心: Spring Cloud使用eureka,dubbo推荐使用zookee ...

  7. 微服务四个常见问题,以及SpringCloud Netflix和SpringCloud Alibaba和Apache Dubbo zookeeper区别

    微服务的四个问题 1.服务很多,客户端该怎么访问? 2.这么多服务? 服务之间如何通信? 3.这么多服务? 如何治理? 4.服务挂了怎么办? 提出三种解决方案 1.spring cloud NetFl ...

  8. Spring Boot、Spring Cloud、Dubbo的区别

    1.Spring Boot用于快速.方便搭建单个微服务系统:框架理念为"默认大于配置": 2.Spring Cloud关注全局服务治理框架:Spring cloud基于Spring ...

  9. SOA、SOAP、RPC、REST、DUBBO的区别与联系

    1.SOA SOA(面向服务的软件架构.Service Oriented Architecture),是一种软件设计模式,主要应用于不同应用组件之间通过某种协议来互操作.例如典型的 通信网络协议.因此 ...

最新文章

  1. vue富文本编辑,编辑自动预览,单个图片上传不能预览的问题解决:
  2. Linux Load Average高但磁盘IO和CPU占用率不高的可能原因
  3. 认识微软Visual Studio Tools for AI
  4. DSP2812程序执行过程
  5. 各版本lettuce spring集成流程(连接池、哨兵配置)
  6. python手机解释器_python3
  7. 【c++】知识点积累
  8. (原創) C++的4個Class Access Label (C/C++)
  9. 【优化算法】烟花优化算法(FWA)【含Matlab源码 1079期】
  10. 告诉我图样图森破的两道简单C++笔试题
  11. Flutter安装时你一定会碰到的问题
  12. 使用electron把vue项目打包成windows应用exe程序
  13. 解读CDN的应用场景与产品价值
  14. 听说你也有拖延症快来看看这篇文章
  15. android 错误中英互译,安卓手机Recovery模式刷机情况下的中英文对照翻译
  16. AD20原理图设计与PCB封装画板--学习笔记
  17. 路由器双线上网 网速翻倍不花钱
  18. 下拉菜单中自动亮度调节P 上背光调节
  19. 无效的m3u8怎么办_求教: 用 ckplayer 网页播放 m3u8 的直播无法播放,是什么问题?...
  20. Mybatis-Plus动态表名插件实现数据库分表查询

热门文章

  1. 苹果备忘录永久删除了怎么办?3种备忘录恢复的方法!
  2. linux 下文件批量重命名
  3. React入门基础教程
  4. IOS-Swift面试相关基础
  5. Docker 镜像上传到私有云和阿里云的超详细图文步骤
  6. 苹果小程序上下拉出现留白情况
  7. 常州市住房公积金管理中心:美创防水坝守护数据安全
  8. C\C++ 日志记录
  9. C++ huffman数据压缩算法实现(附源码)
  10. java编程练习题_java编程练习题