一、概述

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和注册服务管理的区别相关推荐

  1. nacos注册成功但是服务管理界面没有内容

    项目场景: 准备用nacos完成一个微服务架构 问题描述: java后台显示nacos注册成功,但是nacos页面没有显示注册的内容 原因分析: nocos页面选择不对,应该是服务管理下面的服务列表界 ...

  2. SOA和微服务架构的区别?

    知乎用户 289 人赞同了该回答 谢多人邀请,其实前面几位的回答已经差不多了,在这里仅谈下自己的简单总结. 微服务架构强调的第一个重点就是业务系统需要彻底的组件化和服务化,原有的单个业务系统会拆分为多 ...

  3. 分布式与微服务——Iaas,Paas和Saas、单体应用和缺点、微服务概念、传统 分布式 SOA 架构与微服务架构的区别、微服务实战、什么是RPC、CAP定理和BASE理论、唯一ID生成、实现分布式

    文章目录 1-什么是Iaas,Paas和Saas 一 IaaS基础设施服务 二 paas平台即服务 三saas软件即服务 四 总结 2-单体应用和缺点 一 单体应用 二 单体应用的缺陷 3-微服务概念 ...

  4. 系统架构演变:SOA、微服务架构的区别和联系

    1.系统架构演变 随着互联网的发展,网站应用的规模不断扩大.需求的激增,带来的是技术上的压力.系统架构也因此也不断的演进.升级.迭代.从单一应用,到垂直拆分,到分布式服务,到SOA,以及现在火热的微服 ...

  5. SOA和微服务架构的区别

    SOA和微服务架构的区别? 1 条评论 分享 默认排序按时间排序 10 个回答 203赞同 反对,不会显示你的姓名 知乎用户 大型电信行业SOA实施经验,SOA规划咨询,- 203 人赞同 谢多人邀请 ...

  6. SOA架构和微服务架构的区别(转载)

    文章目录 1.SOA架构和微服务架构的区别 2.ESB和微服务API网关 1.ESB(企业服务总线) 2.API网关: 3.SOA架构特点: 4.微服务架构特点: 1.通过服务实现组件化 2.按业务能 ...

  7. SOA、ESB、微服务、分布式概念及专业名词阐述

    SOA.ESB.微服务概念 1 SOA 面向服务 SOA全称:Service Oriented Architecture,面向服务框架.它是一种设计理念,其中包含多个服务,服务之间通过相互依赖最终提供 ...

  8. linux 查询注册服务,window下注册服务的命令小结

    1. 描述:     SC 是用于与服务控制管理器通信的命令行程序 . 用法: sc [command] [service name] ... 选项 的格式为 可以键入 "sc [comma ...

  9. Linux基础篇——Linux进程、服务管理

    文章目录 1. 什么是进程 2. Linux下进程与执行者的关系(多人多任务环境) 3. 工作(Job)管理 3.1 将指令丢到后端执行 & 3.2 将目前的工作暂停 Ctrl+z 3.3 j ...

最新文章

  1. CentOS 7 + nginx-1.12 + php-7.2 + MySQL-5.7
  2. leetcode剑指 Offer 14- I. 剪绳子(动态规划)
  3. 用chkconfig配置linux自启动服务,用chkconfig配置linux自启动服务
  4. Android:使用 Intent 连接多个活动
  5. 计算机专业和制药工程,制药工程本科专业介绍
  6. 【动态规划】P1004 方格取数(四维dp模板题)
  7. python核心技术实战详解_Python核心技术实战详解
  8. Adobe Flash Player32 离线安装包及菁苗软件打开白屏的解决方法
  9. Java方法变量中的final
  10. 使用433MHz RF模块制作一艘简易的Arduino遥控小船
  11. java 编辑器_推荐 5 款牛逼的代码编辑器
  12. 2021-2027全球及中国BIM对象软件行业研究及十四五规划分析报告
  13. 嵌入式设备启动过程(ARM )
  14. Workbench中DM建模草图修改不了的解决办法
  15. 运营笔记:微信推广运营的这些中肯建议,请收藏!
  16. CF/ATC/LC题目分数/近期比赛网址
  17. git-scm教程摘要
  18. Windows Phone笔记(手机应用开发笔记)
  19. 数据的流动——计算机是如何显示一个像素的
  20. python 什么值得买 签到_第一个实用python程序——自动填写工作日志、签到

热门文章

  1. CCF201512-3 画图(100分)
  2. matlab 工具函数 —— logdet(A)
  3. python matplotlib 方程的绘制
  4. Python基础——@staticmethod与@classmethod
  5. spark1.0和2.0的区别_Spark2.1.0——Spark初体验
  6. python使用-Python的使用方法
  7. python与java前景-Java和Python现在都很热门,哪个更有前途?
  8. python没基础能自学吗-需要自学python吗?大概多久能学会?
  9. python 干什么工作具有明显优势-Python 的优势在哪里?
  10. 学python可以做什么职业-学完Python,能找到什么工作?工资多少?