智能体刷屏的背后,是 AI 应用拐点的来临?AICon 北京站议程重磅公布,50+ 硬核分享不容错过 了解详情
写点什么

组件组合的策略与技巧

  • 2008-01-11
  • 本文字数:898 字

    阅读完需:约 3 分钟

自 20 世纪 90 年代以来,组件技术一直在持续发展。随着 Spring 的出现和依赖注入模式的发展,它们到了一个新的转折点,开始提供先进的组合机制。

前几周,SAP Labs 的标准架构师 Sanjay Patil 发表了一篇名为服务组件体系结构的 IT 场景的文章,描述了一些服务组件体系结构(SCA)提供的组合策略。

上个月,一个 IBM 的团队比较了不同的组件技术,以及各种组件技术对组合的支持程度。这篇文章首先定义了一些促使组合机制的属性:

  • 接口耦合
  • 数据(类型系统和消息格式)
  • 版本弹性(译注:即接口的版本对消费者的影响)
  • 转换独立性
  • 预期的交互模式
  • 会话
  • 仲裁能力
  • 动态性

对 Sanjay 来说,两个最重要的因素是:转换独立性,它导致部署的灵活性;动态性,在 SCA 中可利用策略达到。

IBM 的文章也探讨了影响组件粒度的很多因素,它支持当前行业共识:

一般说来,松散耦合的组件是粗粒度的,而紧耦合的组件更可能是细粒度的。

这篇文章声称:

SCA 在两个坐标轴上提供组合:引用组合与实现组合

  • SCA 组件可以这样组合服务:以一个单一调用编程模型(它独立于服务部署的位置和方式)来编制那些服务的调用模式。
  • SCA 还可以通过实现来提供组合:通过把一组细粒度的组件装配成一个粗粒度组件的实现。

Sanjay 把他们的分析分享出来,他认为:

  • 在一个自底向上的组合场景里,一个应用是通过装配现有的不同实现部件 [而组合在一起的]
  • 在一个异构的组合场景里,……SCA 允许将结构化逻辑以及相关的功能(例如映射等)作为第一级别的组件,这些组件与其它组件的关系将被作为一个定义良好的组合的一部分。

然而,他也描述了另一个场景,一个“自顶向下”的场景:

……采用相反的方式来创建组合 [……] 装配器的目标是分析高层业务需求,并在一些仍需实现的组件的顶层创建组合。

IBM 的文章总结:

SCA 的一个强大之处在于它的整合各种各样的细粒度组件模型的能力,而这些模型过去一般被用来实现粗粒度的服务组件。通过模型化全局解决方案的结构,提供机动性与灵活性,以及无需在实现代码中定义复杂的配置细节,SCA 给它们中的每一个带来价值。SCA 还有一个优点,它能把整个解决方案中不同部分的不同组件模型连接起来。

查看英文原文: Component Composition Strategies and Tactics

2008-01-11 20:011205
用户头像

发布了 29 篇内容, 共 45363 次阅读, 收获喜欢 2 次。

关注

评论

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

YashanDB |YMP 迁移时报错 account lock?别让低版本 OpenSSL 坑了你

数据库砖家

YashanDB|复合索引用了也慢?IN 参数太多时建议这样调

数据库砖家

数据库

等保测评公司、漏洞扫描有哪些好处?

黑龙江陆陆信息测评部

好哥哥因为没有搞清楚同步完成和异步完成导致代码死循环了这档事

newbe36524

非计算机专业 0 门槛上手 Trae|知识库精选

火山引擎开发者社区

火山引擎

YashanDB|Oracle 里的 XMLAGG 迁不过来?换成 WM_CONCAT 就对了

数据库砖家

数据库

工厂管理中的5个常见误区,90%的企业都踩过!

积木链小链

数字化转型 智能制造 工厂管理

某平台连续三年通过等保测评,但某天突然收到勒索信

黑龙江陆陆信息测评部

基于 Amazon Bedrock 和 Amazon Connect 打造智能客服自助服务 – 设计篇

亚马逊云科技 (Amazon Web Services)

【HarmonyOS 5】App Linking 应用间跳转详解

深海的鲸同学 luvi

鸿蒙 HarmonyOS HarmonyOS5.0 实践分享

垂死病中惊坐起,笑问产品改哪里?CodeBuddy + Figma MCP 翻盘地狱任务

不惑

CodeBuddy首席试玩官

深度解析淘宝天猫店铺所有商品API接口,一文带你吃透

tbapi

淘宝API 天猫API 天猫店铺所有商品接口 淘宝店铺所有商品接口 淘宝店铺数据采集

gozero限流、熔断、降级如何实现?面试的时候怎么回答?

王中阳Go

Go gozero

飞桨x昇腾生态适配方案:15_loop算子缺失(下):for循环替换loop

小顺637

飞桨 昇腾

懒猫微服太全面了

玄兴梦影

Docker NAS 懒猫微服 AI 大模型 应用商店

LED显示屏:高亮度与低功耗如何选择

Dylan

屏幕亮度 LED LED display LED显示屏 LED屏幕

如何让财务规划引领企业变革,并实现持续的成本优化?

智达方通

企业管理 财务管理 财务规划

京东商品详情API接口攻略

tbapi

京东API 京东商品详情API

《算法导论(第4版)》阅读笔记:p32-p38

codists

算法

审批节点自定义按钮,开启高效审批

引迈信息

HarmonyOS 5.0 低时延音视频开发​​

威哥爱编程

国家信息安全等级保护三级认证定义以及流程简单讲解

行云管家

网络安全 数据安全 等保 等保测评

淘宝图片搜索item_search_img接口 轻松获取Api

代码忍者

AI工具的真相与幻象:从客服看AI应用的理性边界

松子(李博源)

AI #大模型

Uniapp开发鸿蒙应用教程之选项式api和组合式api

幽蓝计划

玩转HarmonyOS NEXT网络请求:从新手到高手的实战秘籍

程序员Feri

HTTP HarmonyOS NEXT

SpringBoot中的拦截器江湖

量贩潮汐·WholesaleTide

spring

Canvas 绘制进度条

cfx

鸿蒙 HarmonyOS 鸿蒙Next HarmonyOS NEXT

卡牌游戏的开发流程

北京木奇移动技术有限公司

软件外包公司 游戏外包公司 游戏开发公司

MES一物一码+二维码管理:从原料到成品的透明化追踪

万界星空科技

制造业 mes 一物一码 万界星空科技mes 二维码巡检

YashanDB|UPDATE 中用子查询赋值报错?换个写法就能兼容

数据库砖家

数据库

组件组合的策略与技巧_SOA_Jean-Jacques Dubray_InfoQ精选文章