一、概述
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. 设置图例字体_R高级画图(0903)关于字体、溪流图、ggplot2主题等设置 (tidyTuesday)...
  2. React开发(169):ant design Popconfirm 使用
  3. 51单片机冒泡排序_51单片机片外冒泡排序
  4. 基于JAVA+SpringBoot+Mybatis+MYSQL的在线购物商城系统
  5. python实践项目(九)
  6. 开源linux远程桌面,10分钟配置自己的vnc [linux远程桌面]
  7. 双重差分模型能做固定效应吗_互助问答第213期:模型中的固定效应问题
  8. JVisualVM 简介
  9. ARM指令集 --RISC精简指令集
  10. 密码应用安全性评估实施之(一)密码应用方案设计
  11. AgentWeb简易使用
  12. Java小游戏:飞翔的小鸟 【附源码和素材】
  13. Speedpdf——无需下载软件,就可以免费轻松搞定CAJ转word
  14. Ubuntu/CentOS 磁盘分区扩展
  15. 国产服务器飞腾/鲲鹏/龙芯下Linux(统信UOS、麒麟系统)下GB28181/Onvif/RTSP监控视频平台的部署操作
  16. 搭建wnmp开发环境
  17. RV1126移植部署sqlite3
  18. 餐饮企业如何在疫情考题中渡过难关?
  19. 十余年软件开发经历,经验总结和程序一览(涉及Socket、WPF、vc++、CAD、图像、GIS)
  20. 二元logistic模型案例_SPSS二项logistic回归分析案例实践,做个预测模型

热门文章

  1. 宝物志:珠宝巨头再受冲击,或将关闭全球最大门店
  2. 安装twemproxy
  3. 千万不要用新技术重新开发一次啊
  4. 关于中断(Interrupt)的详细介绍以及IIC、软串口、PinChangeInt库
  5. Vue中设置class类样式
  6. 【2.计算机网络——物理层】超多图解
  7. DevOps落地之VSM价值流图
  8. 买android手机,买Android手机理由:iPhone 6竟无言以对
  9. Ubuntu18.04安装anaconda+tensorflow2.0(GPU)、显卡驱动、搜狗输入法、TIM
  10. 图解C语言中数组指针、指针数组、函数指针、函数指针数组、指向函数指针数组的指针