低代码到底是不是行业毒瘤?一线大厂怎么做的?戳此了解>>> 了解详情
写点什么

文章:SOA Agents──当网格遇上 SOA

2009 年 3 月 18 日

最近几年,SOA 获得了巨大进步。它由软件爱好者的实验性实现走向了今天 IT 的主流。这一进步背后的一个主要驱动力就是对服务接口背后现有企业 IT 资产的合理运用和虚拟化能力,而这一能力又是与企业业务模型和当下及今后的企业流程高度对齐的。此外,通过引入企业服务总线实现了 SOA 的进步,而它正是 一个虚拟化服务基础设施的模式。通过利用仲裁、服务位置解析、服务水平协议(SLA)支持等,ESB 允许软件架构师显著地简化服务基础设施。整个 SOA 中 所缺失的最后一个环节就是企业数据访问。这一问题的一个可行解决方案就是引入企业数据总线(EDB 一个对企业数据进行普适访问的模式)。

EDB 的一个可行实现是使用数据网格,如 Websphere eXtreme Scale,Oracle Coherence 数据网格,GigaSpaces 数据与应用网格或者 NCache 分布式数据网格。

数据网格是为构建某类解决方案而设计的软件系统,其适用的解决方案范围从简单的内存数据库到分布于规模达数千台服务器之上的强大分布式一致缓存。典 型的数据网格实现会将数据分割到跨机器存储于内存里的不重合的块中。其结果是,通过标准的流程可达到极高水平的性能和伸缩性。性能是通过并行执行更新和查询(数据的不同部分可以在不同的机器上同时访问)实现的,而伸缩性和容错性则通过在多台机器上复制同一数据得以实现。

尽管基于网格的 EDB 简化了对企业数据的高速访问,它仍然有可能要求 EDB 和服务实现之间进行大量的数据交换。服务必须加载所有所需数据,执行其处理,然后将结果存储回网格中去。

一个更优的架构是让服务执行点离企业数据更近;将服务实现为 Agent(代理)的协调人 [7],而这些 Agent 则在包含企业数据的内存空间里执行(图 3)。在这个例子中,服务实现接收一个请求并启动一个或多个 Agent,它们在网格节点的上下文里执行,将结果返回给服务实现,服务实现再组合 Agent 的执行结果并将服务执行结果返回。

Agent 的概念可以回溯到分布式人工智能(DAI)的早期研究,当时引入了这一自完备、可交互、并发执行的对象概念。这一对象有某些被封装好的内 部状态并能对其它类似对象发来的消息作出响应。根据文献 [7],“一个 Agent 是一个能精确行动以代表用户完成任务的软件组件以及 / 或硬件。”

EDB 的引入允许架构师进一步简化 SOA 实现,这是通过在服务实现和企业数据之间引入“标准化的”访问实现的。它同时简化了服务调用和执行模型,还 为服务提供了进一步的解耦。使用网格作为 EDB 实现对 EDB 的可伸缩性和高可用性提供了支持。最后,使用直接在网格内部执行的服务 Agent 更进一步提升 了可伸缩性和性能。本文所描述的网格的高级架构和编程模型,为这一实现提供了一个简单却健壮的基础。

请移步 InfoQ 中文站查看全文 SOA Agents──Grid Computing meets SOA

2009 年 3 月 18 日 18:00528
用户头像

发布了 133 篇内容, 共 27.1 次阅读, 收获喜欢 1 次。

关注

评论

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

test

PQY

初识 Docker 与安装 | Docker 系列

AlwaysBeta

Docker

内存屏障的来历

HackMSF

cpu 并发

Spark Launcher Java API提交Spark算法

杨仪军

spark spark launcher

UML统一建模语言

哼哼

新媒体小编一年工作心得

彭宏豪95

职场 感悟 工作

体验碎片-06/06

黄大路

产品经理

述职报告的一些建议

黄大路

职场

食堂就餐卡系统设计

上山砍柴

极客大学架构师训练营

游戏夜读 | 终端设备之争?

game1night

愿你也能穿越熊熊烈火,飞往你的山

Janenesome

读书笔记 思考

做正确的事情什么时候都不晚

Neco.W

学习 导师

对文化的态度,早在日常中

zhoo299

历史 随笔 文化

游戏夜读 | 核心能力是什么?

game1night

缓存一致性协议的工作方式

HackMSF

缓存 并发

B端产品经理养成记(3):访谈

涛哥

产品经理

现在的我们想要获得成功,除了付出努力之外,还要具备见识。

叶小鍵

【摘】Git-从零单排 03期

卡尔

git 效率工具 工具链

「翻译」测试用例最佳实践

HackMSF

翻译 单元测试

话说 Java vs C#

阿喜伯

食堂就餐卡系统设计

近邻算法介绍

黄大路

数据挖掘 数据分析

线上故障处理实践

心平气和

故障分析 故障定位

Backend Roadmap

陈皮

Backend Developer

中小型城市商业银行数字化转型实践(四)业务中台建设思路和路径

泡菜小仙

行业资讯 银行数字化转型

当代社畜在维权中成长 | 记初次打官司

张鸱鸺

个人成长 随笔杂谈 维权 民事诉讼

练习--食堂就餐卡系统技术方案设计

jason

我是这样给同事分析幂等性问题的

架构精进之路

幂等性 服务设计

听说用 Lombok 可以早点下班?

武培轩

Java 程序员 工具 后端 IDEA

产品周刊 | 第 18 期(20200607)

Herbert

产品 产品经理 产品设计 产品推荐

Trie 字典树

田镇珲

LeetCode Trie

2021 ThoughtWorks 技术雷达峰会

2021 ThoughtWorks 技术雷达峰会

文章:SOA Agents──当网格遇上SOA-InfoQ