搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
笔触狂放9
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
图片识别——感知哈希算法
2
MySQL 事务和锁
3
程序员必备!最全技术文档写作指南
4
Visual Studio Code使用教程
5
【微信小程序】进阶篇 -- uni-app 项目--- 购物车 -- 配置 tabBar 效果(五十一)
6
现代神经网络(VGG),并用VGG16进行实战CIFAR10分类_vgg16项目实战
7
【华为OD机试真题】92、免单统计 | 机试真题+思路参考+代码解析(C语言、C++、Java、Py、JS)
8
【Python系列】.env文件_python .env
9
QT--顶层菜单设计,精灵球与菜单选择两种模式任意切换,可在中小型项目中简单复用,也可进行持续扩展应用,该顶层设计可适用于任何项目。_qt悬浮球
10
Python 使用 FastAPI 和 PostgreSQL 构建简单 API_python fastapi
当前位置:
article
> 正文
ESB是SOA的基本组成部分
作者:笔触狂放9 | 2024-08-10 03:34:38
赞
踩
esb在soa分层架构中哪个位置
ESB是SOA的基本组成部分
与SOA相关的ESB
IBM SOA Foundation白皮书描述了IBM交付SOA价值的整体方法。SOA Foundation的参考体系结构的核心中具有ESB。该参考体系结构的描述声明“ESB 的存在是简化服务调用任务的基础”。虽然该白皮书是在2005年末发布的,但是其中预述的论点却随着时间推移而通过我们在采用SOA的客户方面的经验得到加强。
通过ESB实现的松散耦合的部分优点(包括本系列的第1部分详细描述的服务虚拟化和面向方面的连接中所固有的优点)如下:
请求程序和提供程序不必就消息格式、消息传输甚至目标地址达成一致。
请求消息可由多个提供程序中的任何一个进行处理,请求程序不必显式地确定提供程序。这种路由可以基于相应的版本、服务质量或其他度量。
现有的请求程序无需更改即可连接到新的提供程序。
现有的提供程序无需更改即可对新的请求程序公开。
可以对请求程序做出更改而不影响提供程序,或者对提供程序做出更改而不影响请求程序。
解决方案的横切方面,例如安全性和管理等等,可由ESB进行添加、执行或加强。
可以实现新级别的动态行为,因为ESB能够为请求程序和提供程序之间的每个交互实时执行策略。
作为SOA入口点的ESB
一次性全面采用SOA可能是一项艰巨的任务。IBM已确定了五个SOA入口点,这些入口点提供了有关如何开始渐进地采用SOA的指导。渐进的采用方法允许企业以最适合需要的方式和步调采用SOA。为什么我们要确定五个入口点?简单的原因在于众口难调;企业的在成熟度级别和特定需求方面各不相同,适合于一家企业的入口点可能不适合于另一家企业。这五个入口点基于已导致我们的客户成功实现了SOA的方法。存在两种类别的入口点:
以业务为中心的入口点——人员、信息和流程——允许您从一种侧重于基本企业资产的方法开始。
以IT为中心的入口点——连接性和重用——允许您为SOA奠定技术基础。
您也许已经从SOA Foundation 白皮书中预料到,连接性 意味着使用ESB来“通过更加安全、可靠和可伸缩的方法简化IT环境,从而在企业内外进行连接”。IBM认为,虽然ESB无疑是一种以IT为中心的SOA方法,但是“它本身交付了实际业务价值,并且是将来的 SOA计划的核心构件”。本文中的一个关键问题(将在下面进行讨论)是如何最好地使用ESB来形成将来的SOA计划的构件,以及如何通过连接性入口点获得最大的业务价值。
存在多种利用连接性入口点的方法。有时客户已经在其环境中定义了一些服务(也许是通过合作伙伴),不过是直接连接的服务;这种情况导致缺乏灵活性并增加管理成本。如上所述,在此类环境中插入ESB可以提供直接的松散耦合优点。此外,ESB的存在为将来定义附加服务、创造附加重用机会、支持新的重用渠道、降低管理成本和获得更多敏捷性的工作创造了条件。
客户通常知道ESB的价值并渴望开始从ESB中实现好处,但是他们还没有在其环境中定义服务。我们看到了两种已采用过的成功技术,这两种技术帮助在这种情况下从ESB获得好处。客户经常混合使用重用和连接性入口点。他们确定需要作为服务来连接的功能或应用程序(请求程序或提供程序)。同时,他们将 ESB 插入该体系结构,以提供新的服务请求程序和提供程序之间所需的松散耦合。混合方法得以流行的一个重要因素是ESB产品的转换和变换功能。此类功能允许使用同一个 ESB 产品作为某种形式的适配器,以便以更加可重用的形式公开功能或应用程序,并提供所需的服务虚拟化和面向方面的连接。这里成功的关键是谨慎地开始,公开少量的服务并开发对应的中介,但是这些服务和中介都在为考虑中的整个最终范围而设计的体系结构之内。
有些客户插入ESB以建立组织中连接的所需方向,尽管起初还没有确定要连接的服务。在此情况下,ESB是组织的总体参考体系结构的一部分;参考体系结构 提供了体系结构方向,并强制要求最终将作为解决方案一部分而创建的所有服务(请求程序和提供程序)进行松散耦合连接。ESB是用于实现该松散耦合的首选机制。采用ESB实际上消除了解决方案中的直接连接不知不觉地增长的可能性。这里成功的关键是:
采用一个要求并演示ESB使用的参考体系结构。
考虑解决方案的整个最终范围,并支持最佳的ESB产品选择。
随着解决方案的发展而实施强有力的治理,以确保利用ESB来连接到引入解决方案的新服务(请求程序和提供程序)。
SOA入口点最佳实践
存在一组IBM强烈建议用于任何SOA采用的最佳实践。这些最佳实践的最重要元素是建立一个路线图并渐进地实现该路线图,该路线图定义了实现所需业务目标的采用计划(请参见参考资料部分以获得指向文章“Service Oriented Architecture:An Introduction for Managers”的链接)。该路线图包括两个重要组成部分:
战略远景,业务或IT的方向陈述(包括参考体系结构和治理计划),可用作决策制定、组织参与和标准采用的指导原则。
一组项目计划,定义实现项目以满足当前业务驱动因素的即时和将来需要。
此类路线图允许您渐进地实现SOA,以在每个项目步骤中回报业务价值。
您应该在执行该路线图的早期确定您业务的最佳SOA入口点。您应该基于从您的总体战略远景和当前SOA成熟度级别得出的要求来选择该入口点。该入口点可能是也可能不是连接性入口点;它可能是上述入口点的混合。但是,连接性入口点是最普遍的入口点,因为有如此多的客户具有将请求程序连接到提供程序的即时需要,并希望获得ESB提供的松散耦合的好处。IBM提供了一个在线工具 Business Value Analyzer,以帮助您选择SOA入口点。
另一个最佳实践是建立治理框架以确保组织遵循该路线图(请参见参考资料以获得指向文章“SOA Governance and Service Lifecycle Management”的链接)。SOA 所促进的灵活性增强和跨组织性质要求组织建立治理框架,以实现主动的决策制定、准确的跟踪、改进的服务能力和更好的交流。有效的治理通过在增添价值的同时平衡风险和回报,从而帮助实现企业的业务目标。
正如上面所建议的,渐进的SOA采用是成功的关键。IBM建议从试验项目开始,该试验项目:
处理得到充分了解、重要但不关键的业务需要。
实现参考体系结构的某些重要方面(也许是ESB和一组示例服务、提供程序、请求程序,这些方面用于演示SOA的使用)。
需要一个超出当前能力的可达范围。
积累SOA技能。
用作对采用SOA治理和新的服务生命周期管理流程所进行的试验。
产生将会投入生产应用并将交付投资回报的结果。
通过SOA实现的关注事项分离甚至允许试验项目以能够积累专业经验和验证业务价值但不中断主要操作的方式引入SOA。
SOA连接性入口点最佳实践
除了SOA最佳实践以外,还存在其他更特定于ESB的最佳实践:
仅当ESB在您的路线图中有意义时才采用ESB。例如,如果SOA入口点以业务为中心,您可以推迟通过ESB实现的松散耦合,尽管您的参考体系结构中包括了ESB。
基于您的参考体系结构和一组跨全套项目计划的实际要求来设计ESB并选择ESB产品。我们说实际 是因为您应该集中于未来几年中的需要;到您超过该时间期限时,产品和需求已经发生了改变。如果仅考虑即时需求,尤其是忽略服务请求程序和提供程序的预期需要,则会导致选择非最优ESB产品。您必须明确地在公司的约束内行事,例如年度资金周期和预算,但您同时还希望将短期采购和决策与考虑中的长期(三至五年)目标保持一致。
根据情况考虑ESB联合。更大型的异构企业通常作为某种自治域的联合体出现,这些自治域基于各个业务部门或者职能或治理方面。在此类环境中,某些服务可以在单个域中进行共享或重用,而其他服务可以在整个企业中进行共享或重用。在这些情况下,我们建议采用某种形式的ESB联合,该形式的ESB联合与域联合的需要相匹配。ESB联合允许在不同的域中使用不同的ESB产品,并支持域需求与产品功能之间的最佳匹配。路线图和参考体系结构应该为任何给定域的产品选择提供指导原则甚至选项,以确保实现企业范围的优化。我们进一步建议使用联合服务注册中心和存储库,为企业范围的管理和可重用服务的治理提供帮助。
您是否需要ESB来成功采用SOA?
前面几个部分说明了从ESB开始成功的SOA之旅。另外四个入口点不需要ESB即可开始该旅程。然而IBM认为,无论其入口点是什么,绝大多数成熟的面向服务的解决方案都将包括ESB,以最大化SOA中所需的敏捷性和灵活性。因此,虽然初始项目可以不包括ESB,但是在您的长期业务和IT路线图中,ESB应该是参考体系结构的一部分,以实现成功的SOA。如果没有ESB提供的敏捷性和灵活性,您会发现在面临不可避免的变更时,管理解决方案将变得非常困难,并且开销很大。
这是否意味着在准备好包括ESB在内的所有体系结构组件之前,您还没有拥有真正的SOA呢?此问题没有正确或错误的答案,并且可能存在许多选项。在某种程度上,此问题并不重要——重要的是在实现新的SOA项目以及解决方案根据您的路线图逐渐变得成熟时,您要渐进地向业务交互越来越多的价值。
我们的客户好像同意这个观点。几乎我们的所有采用SOA的客户都从ESB开始,或最终在解决方案中使用了ESB,并从ESB支持的灵活性和敏捷性中获得了重大的IT和业务价值。
本文内容由网友自发贡献,转载请注明出处:
【wpsshop博客】
推荐阅读
article
Mac
vscode
配置
C++
_
mac
vscode
+
opencv
...
mac
下配置
C++
环境_
mac
vscode
+
opencv
mac
vscode
+
opencv
...
赞
踩
article
麒麟
KOS上修复
华为
L410
及
L420
仓库源_
l410
更新
...
本文详细介绍了如何在
麒麟
桌面操作系统中解决
华为
L410
和
L420
的仓库源问题,包括查看系统信息、复制正确源文件并
更新
,确...
赞
踩
article
免费替代
Midjourney
!
FLUX.1
使用
方法
大全
,
支持
ComfyUI
...
FLUX.1
是由Black Forest Labs推出的开源AI图像生成模型
,
由Stable Diffusion原班人马...
赞
踩
article
c++
哈希表的实现
_
c++
h
list
.
h
...
最近想自己写个lru缓存练练手,于是乎就从最基本的
h
as
h
map开始着手,原本打算用容器机制来实现的,后来想想直接用模板...
赞
踩
article
消息队列 Message
queue
_
windows
python
message
queue
...
1、如果是一台机器上,用
python
的
queue
异步就可以了但要是多台服务器,跨网络的话,就用到了mq2、价值在于1...
赞
踩
article
MySQL
性能
优化
的
9
种
方式_
mysql
优化
的
几
种
方法...
面试官:你们平时是怎么
优化
mysql
的
?我:。。。看完这篇,面试再也不怕了!_
mysql
优化
的
几
种
方法
mysql
优化
...
赞
踩
article
centos7
安装
rabbitmq
3.7.17_
socat
被
rabbitmq
-
server
-3....
先用centos6.5,安装了很久还是失败了,还是换成了
centos7
才成功,特意记录下。中间,启动不了,找了很久的BU...
赞
踩
article
Android
低功耗
蓝牙
开发
(
扫描
、连接)_
android
连接
低功耗
蓝牙
...
一、项目配置首先进行项目的配置,一个是build.gradle配置,一个是
Android
Manifest.xml配置。先...
赞
踩
article
python
mq_
Python
中线
程
的
MQ
消息
队列
实现以及
消息
队列
的
优点解析...
消息
队列
(
MQ
,Message Queue)在
消息
数据传输中
的
保存作用为数据通信提供了保障和实时处理上
的
便利,这里我们就...
赞
踩
article
人工智能
在
日常生活
中的十大
应用
:从医疗到
智能家居
_
我们
生活中的ai
技术
应用
...
从那时起,当平台中的内容量增加时,
人工智能
的作用变得更加重要,在打击垃圾邮件和改善用户体验的同时向用户展示准确的信息变得...
赞
踩
article
若依
框架从
mysql
切换到
postgresql
数据库
驱动
_
postgresql
若依
...
本文介绍了如何在SpringBoot项目中修改依赖、优化
数据库
连接池、更新分页插件,以及对SQL语句进行日期格式转换,同...
赞
踩
article
读写
锁
ReadWriteLock
的实现
原理
_
readwritelock
原理
...
什么是
读写
锁
ReadWriteLock
存在的意义是什么?
读写
锁适用于什么场景?什么是锁降级和锁升级?_readwrit...
赞
踩
article
AI绘画
comfyui
光效换
背景
工作
流
,产品与
背景
完美融合!_
iclightapply
...
最近学习
comfyui
的
工作
流
搭建及应用,发现搭建
工作
流
有点像是炒菜,今天这个
工作
流
我之前拆解过,但是没有给光指定方向和...
赞
踩
article
买不到
用户
的大
模型
,
开始
倒闭了...
前段时间各个大
模型
开始
降价甚至免费,都是为了抢夺
用户
;而随着AI加持,iPhone也要来抢夺
用户
;这种情况下,没有
用户
甚...
赞
踩
article
tensorflow
vgg
基于
cifar
-
10
进行
训练
_用
cifar
10
数据集
训练
vgg
...
最近接触tf,想在
cifar
-
10
数据集上
训练
下
vgg
网络。最开始想先跑
vgg
16,搜了一大圈,没有一个可以直接跑的(我...
赞
踩
article
Google
发布最快
的
Android
模拟器
,
一秒快速
启动
!
_
谷歌
模拟器
安卓...
现在随着短视频
,
抖音
,
快手
的
流行NDK模块开发也显得越发重要
,
需要这块人才
的
企业也越来越多
,
随之学习这块
的
人也变多了
,
音...
赞
踩
article
【
Docker
】
Docker
Container
(
容器
)...
什么是
容器
。【
Docker
】
Docker
Container
(
容器
) 一、什么是
容器
通...
赞
踩
article
10
个
资源
满满的
网站
,
偷偷
收藏
起来吧!...
大家一般找
资源
肯定会先想到百度搜索,可是有时候度娘
资源
也是有限的。想要的
资源
找不到怎么办?别担心,今天给大家分享
10
个资...
赞
踩
article
2017年
中国
人工智能
产业
最全
研究
报告发布 |
AI
世界2018年八大趋势...
来源: 数据观概要:从目前来看,计算机视觉技术是
人工智能
的核心技术之一,广泛的商业化渠道和技术基础使其最为热门。目前,中...
赞
踩
article
双
指针
技巧,
链表
...
定义两个
指针
,一个在左一个在右边,距离为n,右
指针
走n次即可。走到最后一个结点则停止,因为删除结点要知道要删除结点的前一...
赞
踩
相关标签
linux
统信
kylin
中科方德
shell脚本
华为L410
麒麟990
midjourney
ai
ai绘画
开源
分布式
微服务
性能优化
mysql
数据库
android
python mq
智能电视
读写锁
ReadWriteLock
并发编程
AQS
Java