随着政府、企业信息化这么多年的发展,信息化在许多单位已经实现了业务领域的全覆盖或基本覆盖,很多时候,再做信息化已经不再是像以前那样新上个业务应用,针对现有业务应用的集成整合,越来越成为一个大的趋势。应用间的集成整合,从技术手段上来讲,可以有多种选择,而基于SOA理念的集成整合则是目前广为大家所知、所接受的一种方式。ESB作为SOA参考架构模型中的核心组件,越来越多的在应用整合集成领域发挥大的作用。
不可否认,ESB是个非常好的工具,内置各种接入组件和接入协议支持,能够方便的实现跟不同业务应用的接入,但ESB也不是万能的,在跟客户、同事交流过程中,发现有些认识上的误区。
一、ESB能干的事情是其他工具或其他方法干不了的
很多人一开始接触采用ESB做应用集成整合的思路时,通常会问,为什么要用ESB,有哪些ESB能干的事情是其他的工具或其他的方法不能干的。要理解这个问题其实很简单,ESB只是一个工具,也是一套程序,具备一定功能的程序。既然是程序,就是通过某种编程语言写代码实现的,只不过这一大堆代码可能设计良好,考虑到了很多种情况,经历了很多场景的检验,是比较成熟稳定的;时间和精力足够的前提下,相信有很多牛人或者牛公司可以从零开始实现一个ESB的全部功能。所以从这个意义上来讲,没有任何事情是ESB能干而其他工具或其他方法不能实现的。那为什么还用ESB,直接写代码多直接?理解这个问题也简单,因为ESB这堆代码是设计良好的、经历很多场景检验的、成熟稳定的,如果自己写,不能说就一定是不够设计良好、不够成熟稳定,但要达到这个目标至少需要一段比较长的时间,而时间恰恰在很多时候是个稀缺资源。
二、只要是做应用集成整合,用ESB就是最好的选择
这其实也是一个比较常见的误区,ESB适用的场景是:在多个(一般来说至少两个以上)应用之间做整合集成的情况,而且希望应用系统之间是松耦合的,因为后续系统间的接口有可能会发生变化。这种情况下就是ESB大显身手的时候,设想有10个系统,如果每个系统都有可能需要跟其他的系统有接口,你可以算一下一共得多少个接口,如果后续业务有一点点变化,你要改这些接口是不是有点欲哭无泪的感觉。而采用ESB则不然,所有应用间的集成交互都是通过工具可视化配置的,基本不需要写代码,修改起来也非常灵活。如果只有两个系统要实现数据交换,要交换的内容不是很多,而且是一成不变的(至少在可预计的将来,比如5-10年内不会变),通过写代码来实现也不失为一个可选项,毕竟采用ESB需要购买工具不是。
三、ESB内置各种接入组件和接入协议,做应用集成整合不需要应用系统原厂商支持
这个认识误区可能更具普遍性。很多人会问,你们的ESB不是可以跟各种数据库、各种协议都方便的接入吗,不是不用关心是采用什么开发语言吗,为什么还需要应用系统原厂商提供支持?首先,ESB确实可以实现跟各种数据库、各种协议方便接入,也确实不关心应用系统采用什么开发语言,但是ESB要实现对不同应用的接入,还需要这些应用系统提供接入的接口,举例来说,有A系统,ESB需要将A应用接入,把其中的某些数据提供给另外的应用使用,那这些数据ESB怎么获取到呢,总的来说无非两种方式,一种直接到数据库里取,另外一种是跟应用做接口,从接口取;如果是从数据库里取,是不是需要知道这个应用的相关表的结构和业务含义?是不是需要应用数据库对ESB放开读取权限?这些没有应用原厂商支持怎么做到?如果是跟应用做接口,那应用有没有现成的接口,如果没有是不是要开发一个接口,开发接口是不是也需要应用原厂商来做?这还只是从系统里取数据的情况,如果要往某系统里写入某些数据,是不是更需要原厂商提供接口(往应用里写数不推荐直接操作库表的方式)?所以,虽然ESB具备了开放强大的接入能力,在做应用集成时,离开了原厂商的支持,也是无法开展工作的,至少是很难开展工作。
分享到:
相关推荐
**常见误区:** 1. **微服务让开发变得简单:** 实际上,微服务更多的是关于如何组织软件的一种风格,而非简化开发流程。 2. **微服务应该按照某种标准拆分:** 关于如何拆分服务并没有统一的标准,通常需要根据...
资源内项目源码是来自个人的毕业设计,代码都测试ok,包含源码、数据集、可视化页面和部署说明,可产生核心指标曲线图、混淆矩阵、F1分数曲线、精确率-召回率曲线、验证集预测结果、标签分布图。都是运行成功后才上传资源,毕设答辩评审绝对信服的保底85分以上,放心下载使用,拿来就能用。包含源码、数据集、可视化页面和部署说明一站式服务,拿来就能用的绝对好资源!!! 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、大作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.txt文件,仅供学习参考, 切勿用于商业用途。
wrf转mp4播放器1.1.1
内容概要:本文档详细介绍了如何在Simulink中设计一个满足特定规格的音频带ADC(模数转换器)。首先选择了三阶单环多位量化Σ-Δ调制器作为设计方案,因为这种结构能在音频带宽内提供高噪声整形效果,并且多位量化可以降低量化噪声。接着,文档展示了具体的Simulink建模步骤,包括创建模型、添加各个组件如积分器、量化器、DAC反馈以及连接它们。此外,还进行了参数设计与计算,特别是过采样率和信噪比的估算,并引入了动态元件匹配技术来减少DAC的非线性误差。性能验证部分则通过理想和非理想的仿真实验评估了系统的稳定性和各项指标,最终证明所设计的ADC能够达到预期的技术标准。 适用人群:电子工程专业学生、从事数据转换器研究或开发的技术人员。 使用场景及目标:适用于希望深入了解Σ-Δ调制器的工作原理及其在音频带ADC应用中的具体实现方法的人群。目标是掌握如何利用MATLAB/Simulink工具进行复杂电路的设计与仿真。 其他说明:文中提供了详细的Matlab代码片段用于指导读者完成整个设计流程,同时附带了一些辅助函数帮助分析仿真结果。
国网台区终端最新规范
《基于YOLOv8的智慧农业水肥一体化控制系统》(包含源码、可视化界面、完整数据集、部署教程)简单部署即可运行。功能完善、操作简单,适合毕设或课程设计
GSDML-V2.33-LEUZE-AMS3048i-20170622.xml
微信小程序项目课程设计,包含LW+ppt
微信小程序项目课程设计,包含LW+ppt
终端运行进度条脚本
幼儿园预防肺结核教育培训课件资料
python,python相关资源
《基于YOLOv8的智慧校园电动车充电桩状态监测系统》(包含源码、可视化界面、完整数据集、部署教程)简单部署即可运行。功能完善、操作简单,适合毕设或课程设计
deepseek 临床之理性软肋.pdf
SM2258XT量产工具(包含16种程序),固态硬盘量产工具使用
RecyclerView.zip
水务大脑让水务运营更智能(23页)
资源内项目源码是来自个人的毕业设计,代码都测试ok,包含源码、数据集、可视化页面和部署说明,可产生核心指标曲线图、混淆矩阵、F1分数曲线、精确率-召回率曲线、验证集预测结果、标签分布图。都是运行成功后才上传资源,毕设答辩评审绝对信服的保底85分以上,放心下载使用,拿来就能用。包含源码、数据集、可视化页面和部署说明一站式服务,拿来就能用的绝对好资源!!! 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、大作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.txt文件,仅供学习参考, 切勿用于商业用途。
大众捷达轿车前轮制动器设计
《基于YOLOv8的智能工厂压缩空气泄漏检测系统》(包含源码、可视化界面、完整数据集、部署教程)简单部署即可运行。功能完善、操作简单,适合毕设或课程设计