写点什么

使用 OSGi,SCA,BPEL 和 Spring 增强可管理性

  • 2008-03-04
  • 本文字数:1218 字

    阅读完需:约 4 分钟

自 OpenSOA 最初发布名为“优势整合,SCA,OSGi 和Spring ”的白皮书以来,这三种技术的整合产生了一些有趣的事情。甚至有一个这种基础设施的商业实现 Spring 动态模块早已合并了 Spring 和 OSGi,同时 Spring Bean 可以被作为一个 SCA 的组件实现使用。最近,Tuscany 的 Java 实现被构建在了 Apache 的 OSGi 框架 Felix 之上。

如果 William Vambenepe愿意承认这种新型基础设施所声称的

  • “灵活性” (感谢 OSGi)
  • “可测试性”(感谢 Spring)
  • “可重用性” (感谢 SCA)

那么他不太同意白皮书作者的观点,表现在:

  • “简单性”……除非你是一少部分对所有三种工具都有涉猎的人之一。
  • “可管理性”,让我们称之为“可管理潜力”,并保持友好。

可管理性是 SOA 的一个重要方面。在一次私人通信中,Brian Cowan,一个位于西雅图的大型保险公司的首席商业架构师指出: > SOA 似乎正将一些单块(monolithic)应用模型的复杂性推给了管理和运营。这是你得以实现、部署、伸缩或者保护你解决方案的每个独立部分所必须付出的代价。

William 在他更早的一篇文章里对 SCA 在可管理性上的影响做了评论

我看到了 SCA 的另一个优势:它是机器可读的组合应用的逻辑的描述,并位于一个对应用和服务管理有用的粒度层次。

与 SCA[类似],BPEL 不是针对可管理性而设计的。它更多定位于提高生产力、可移植性以及灵活性。[……] 它还提供了对应用管理非常有用的元数据。无论是从突显应用流程(通过活动),还是从阐明依赖和关联策略(通过伙伴链接)的方面来说。

SCA,OSGi 和 Spring 还有助于填补那个空白。它们提供额外的应用元数据,这些元数据可以被应用管理工具用来给管理任务提供更多的应用上下文。

在这篇对 OSGi 进行了广泛介绍的白皮书里,作者指出:

OSGi 服务平台是专为那些能够无人值守操作或者在一个平台操作员的控制下操作的设备而设计的。这些就是需要远程管理的设备。

远程管理设备需要一个协议。选择一个适当的协议很困难,因为有太多的选择,包括 SNMP、CMISE、CIM、OMA DM 或者其它协议。

OSGi 联盟决定不优先选择其中一个协议而否定其它的,因为没有一种协议能够适合各种情况。因此 OSGi 联盟选择了一个体系结构,其提供了一个能够被一个经过授权的 Bundle 使用的管理 API。这时,这个经过授权的 Bundle 就能够扮演一个管理 Bundle,在这里 Bundle 将一个协议映射到 API 调用上。

事实上,西班牙的马德里综合技术大学(Universidad Politécnica de Madrid)电讯工程系(Departamento de Ingeniería Telemática)已经为OSGi 服务平台开发出了一个叫做 JMood 的基于 JMX 的管理代理。

结尾,William 提出了一些注意事项:

虽然这一切很令人兴奋,不过我们中的一些人还想知道,这样冒着风险将这些规范过于紧密的衔接到一起是不是太早了。我见过太多这种“标准框架”的 powerpoint 幻灯片,来展示一系列开发中的规范能够如何如何准确地协同工作来满足世界的所有需求。

查看原文: Enhanced Manageability with OSGi, SCA, BPEL and Spring

2008-03-04 09:481724
用户头像

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

关注

评论

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

【JavaWeb】JSP系列——关于JSP、JSP的基础语法、利用Servlet+JSP改造项目、JSP指令、JSP九大内置对象

胖虎不秃头

Web java; 9月月更

哪些应用适合Docker化改造

阿泽🧸

Docker 9月月更

跟我以前学mybatis

楠羽

mybatis 笔记 9月月更

【编程实践】一步步带你从二叉树到实现哈夫曼编码

迷彩

算法 二叉树 9月月更 哈夫曼编码 哈夫曼树

值得收藏|三种经典的指标监控模型

穿过生命散发芬芳

9月月更 监控指标

融云 Flutter SDK,跨平台开发的真香之选

融云 RongCloud

flutter 跨平台开发 SDK 教程

一张图告诉你出海服务商怎么选:中国互联网出海服务商生态图谱

易观分析

报告 出海服务商

极速导入elasticsearch测试数据

程序员欣宸

elasticsearch 9月月更

如何用Python代码绘制赏月美景?

芯动大师

中秋节

【精通内核】Linux内核自旋锁实现原理与源码解析

小明Java问道之路

Linux内核 自旋锁 读锁 9月月更 写锁

C++ 学习 ------cmath 头文件的源码学习 03

桑榆

c++ 源码阅读 9月月更

Web3.0 会长什么样?

掘金安东尼

前端 Web3.0 9月月更

【云原生 | 从零开始学Docker】二、Docker的常用指令学习以及使用

泡泡

Docker 云计算 云原生 9月月更

高性能使用索引

急需上岸的小谢

9月月更

架构师的十八般武艺:高并发架构

agnostic

高并发

图解Kafka的服务端的网络通信模型

石臻臻的杂货铺

kafka Kafka实战 9月月更

【好一朵美丽的玫瑰花】(C++代码实现+EasyX图形化界面)

Fire_Shield

计算机视觉 9月月更 EasyX

【JavaWeb】Servlet系列——Cookie机制、乱码问题总结

胖虎不秃头

Web java; 9月月更

python小知识-日志处理logging

AIWeker

Python python小知识 9月月更

IntelliJ IDEA远程调试Elasticsearch6.1.2

程序员欣宸

elasticsearch 9月月更

【C语言】字符函数&字符串函数&内存函数(上)[进阶篇_复习专用]

Dream-Y.ocean

c c++ 9月月更

【JavaWeb】Servlet系列——session会话机制

胖虎不秃头

Web java; 9月月更

HTML标准解读第一章:HTML、XML、XHTML、SGML究竟有什么区别?

水鱼兄

html 前端 HTML标准

【C语言深度剖析】深入理解C语言中函数的递归算法

Albert Edison

递归 C语言 函数 9月月更

InnoSetup制作补丁包替换文件操作

中国好公民st

c++ qt 9月月更

力扣260 - 只出现一次的数字||| 【哈希映射、异或位运算+分治思想】

Fire_Shield

位运算 哈希表 9月月更

创立一年就估值5亿美金,这个项目是怎么做到的?

One Block Community

区块链 创业 融资 defi

2022-09-10:以下go语言代码输出什么?A:编译错误;B:49.0;C:49。 package main import ( “fmt“ ) func main() { ch

福大大架构师每日一题

golang 福大大 选择题

FreeRTOS记录(五、FreeRTOS任务通知)

矜辰所致

FreeRTOS 9月月更 任务通知

【精通内核】Linux内核中断控制原理源码解析

小明Java问道之路

cpu 寄存器 Linux内核 中断 9月月更

【精通内核】Linux内核抢占原理源码解析

小明Java问道之路

cpu Linux内核 中断 9月月更 内核抢占

使用OSGi,SCA,BPEL和Spring增强可管理性_SOA_Jean-Jacques Dubray_InfoQ精选文章