写点什么

联邦服务总线基础设施模型

  • 2009-04-22
  • 本文字数:1051 字

    阅读完需:约 3 分钟

Jack Van Hoof 撰写了一篇关于如何建模联邦服务总线基础设施的说明指南,这种基础设施给企业中与之交互的各部分提供了预期的自治水平。在他看来,ESB 一词并未对它服务的范围着墨太多,因此他进一步在它们联邦的基础之上对 ESB 进行了分类。

这个模式在一个由多个逻辑总线组成的联邦服务总线基础设施中划出了 4 个关注级别:

  • 应用级:应用级服务总线支持细粒度的应用级流程和活动监视。每个应用绑定到它自己的逻辑总线上。在实践中,这种边界一般是通过应用服务器上的应用名字空间来实现的,Java 使用的是 JMS,.net 则是 WCF。
  • 领域级:领域是一个功能内聚的实体,如人力资源管理、财务、物流、销售、收购。这一级别的服务支持在这个特别领域内跨应用的流程和活动监视。领域同样会暴露由领域应用访问的领域通用服务。如果存在多个服务总线,每个领域一个。
  • 公司(企业)级:公司级服务总线支持跨领域的流程和活动监视。在公司级,一个公司总线为一个企业服务,领域同样可以访问这个企业。
  • 外部级:外部级服务总线支持与公司外部世界、业务合作方、消费者和供应商的交互。

由于这种总线分类法很自然地在企业内总线类型中形成了一个层次结构,因此他警告说,如果没有对它进行有效地建模,它最终很可能会变成一种被他称为是“意大利面条”的结构。为了避免这种情况的发生,他对拓扑和服务总线范围的建模使用了“父 - 子”隐喻。

在这个模式中,提倡使用层次化的交互结构来维护所期望的自治边界和结构可控性。这种层次化的结构最终导致了一种层次化的“父 - 子”通信方法。一个子只有一个父(各位,这只是个比方),一个父可能有多个子。例如,一个应用是一个领域的子(n:1);一个领域是多个应用的父(1:n)。

在解释完这之后,他推荐按照以下规则来避免出现“意大利面条式”的结果:

  • 子级流程可以向它的父级总线发送消息
  • 父级流程可以向它的子级总线发送消息
  • 向下的跨级消息传递总是由父级总线依次传递给子级总线
  • 向上的跨级消息传递总是由子级总线依次传递给父级总线
  • 父级总线可以向它的子级总线暴露服务

他还提到了实践中的一些注意事项,它可不像只是遵循这些规则一样那么简单。

  • 行政方面的考虑 > 领域模型成形的基础主要是自治团体,后者源于文化、历史和权力。领域往往有权自行决定像应用、工具和平台这类的资源。
  • 互操作性方面的考虑 > 关于联邦服务总线基础设施,使用不同产品 [……以及] 支持 [它们间的] 互操作性是当前 IT 业的焦点。

Jack 给出了一种服务总线基础设施的建模方法。关于详细内容请阅读原文

查看英文原文: A Model For A Federated Service Bus Infrastructure

2009-04-22 06:031493
用户头像

发布了 255 篇内容, 共 56.9 次阅读, 收获喜欢 10 次。

关注

评论

发布
暂无评论
发现更多内容

终于学完了阿里P8大牛推荐的527页Java性能优化实践文档

Java 编程 架构 面试

毕业1年,凭借一份 “漫画” 杀进大厂?他是怎么做到的?原理篇+框架篇

Java架构师迁哥

架构实战营模块二作业

王晓宇

我佛了!花重金求来的并发编程笔记,颠覆了我以往“正确“的认知

Java 编程 程序员

昇腾AI的三级跳

脑极体

🐧【Linux技术专题系列】「必备基础知识」一起探索(su、sudo等相关身份提权/身份切换机制)

洛神灬殇

Linux linux 文件权限控制 7月日更 Linux身份提权

一文搞懂二分查找面试

泽睿

算法 二分查找

Spark SQL和DataFrames:内置数据源简介(四)

Databri_AI

spark sparksq

Discourse 调整使用不同的表情符号

HoneyMoose

【Flutter 专题】84 图解自定义 ACEWave 波浪 Widget (二)

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 7月日更

Ping Exporter -- Prometheus

耳东@Erdong

Prometheus ping 7月日更 exporter

2021年网络安全市场全景图,看看都有哪些企业吧!

郑州埃文科技

golang解析---进程,线程,协程

en

线程 进程 协程 Go 语言 goroutine

hdfs中抽象为block块的好处

五分钟学大数据

hdfs 7月日更

【通证经济】价值、应用、市场,被掩盖的区块链宝藏!!

CECBC

要性能还是要模型?

escray

学习 极客时间 7月日更 如何落地业务建模

Spark :: 源代码(前传)—Spark多线程 :: NettyRpcEnv.ask解读

dclar

spark 多线程 Spark调优 源代码

模块-6 拆分电商系统为微服务

小遵

微服务架构服务容错设计分析

慕枫技术笔记

架构 微服务 后端

Python 正则表达式急速入门

喵叔

7月日更

模块2作业

Tina

架构实战营 模块二 作业

一雄

作业 架构实战营 模块二

架构实战营第二周作业——微信朋友圈高性能复杂度

发酵的死神

架构实战营

如何通过代码审计从三层内网各种漏洞拿到域控?

网络安全学海

黑客 网络安全 信息安全 安全漏洞 渗透测试·

🐧【Linux技术专题系列】「必备基础知识」一起探索(用户、用户组与文件权限)

洛神灬殇

Linux 操作系统 linux 文件权限控制 7月日更

有趣的SVG、Favicon

devpoint

favicon SVG 7月日更

JDBC数据库链接的那些事

卢卡多多

JDBC 7月日更

分布式事务最经典的七种解决方案

叶东富

数据库 分布式事务 微服务 TCC Go 语言

深入了解Spring之MessageSource

邱学喆

MessageFormat MessageSource MessageSourceAware

模块-1 微信业务架构图 和 备选方案

小遵

Liunx之chown命令

入门小站

Linux

联邦服务总线基础设施模型_SOA_Dilip Krishnan_InfoQ精选文章