遗留系统要想加入 SOA 需要服务么?

  • Dilip Krishnan
  • 张龙

2009 年 3 月 30 日

话题:SOA架构

Joe McKendrick 在对 Oracle 印度公司 Oracle Fusion Middleware 副经理 Shailender Kumar 的一次采访问到SOA 能否用在无服务的应用中。

在采访中 Shailender Kumar 提到采用 SOA 的几个主要挑战:

  • 对服务元数据的管理
基于 SOA 的环境可以拥有很多服务,它们彼此交换信息来执行任务。管理服务之间的信息交互是个麻烦事。
  • 对安全级别的管理
使用服务的应用(尤其是那些位于公司防火墙之外的应用)要比公司的私有应用更容易暴露给外界。所谓安全,就是 SOA 的灵活性和范围之间的妥协。
  • CIO 与 IT 执行官无法理解 SOA 的基本概念以及上手之道

尽管 Shailenders 的这番论调只是针对印度的公司,但 Joe 相信它们也适用于最懂 SOA 的那些公司,他的一项调查表明即使是这些公司也仅有不到 20% 的产品是基于 SOA 的。这难免会引起一番争论:

关于 SOA 有这样一种荒诞的说法:如果应用没有提供服务,那么就没法实现 SOA——这显然是错误的。事实上,一些人将 Web Services 看作是 SOA,这并不正确,因为 Web Services 仅仅是另一个协议而已。例如,如果你有一个提供服务的应用以及一堆不提供服务的应用,那么你仍然可以通过适配器的部署将他们连接起来。

但 Joe 相信我们还是能够在日常生活中感受到 SOA 的影响的:比如在线购物,使用各种“现代化”的订单销售系统来连接不提供服务的“遗留”系统,如果这些“现代化”的系统不提供服务将很难管理...

... 如果组织没有将其现有系统废弃掉并完全重头开始,那么为 SOA 所付出的那么多努力就毫无价值了。当然,JBOWS是目前最好的架构,而这也只不过是发展道路上的一个阶段,一切皆有可能,今后我们也不会要求所有东西都是 100% 提供服务的。

我们可否将使用适配器“混搭(mashup)”新旧应用看作 SOA 么?请看看这篇文章吧。

查看英文原文:Is Service-Enablement Required For Legacy Systems To Participate In SOA?

SOA架构