SOA 的定义 ——谢炯

原创 2006年06月19日 19:27:00

SOA 的定义


首先,什么是服务?服务是业务任务的可重复逻辑表现形式。此处有必要强调的是,我们所谈的是业务流程的一部分,而不是软件或 IT 的一部分。
通过技术实现后,“服务”这一术语则应用到使用外化规范的软件资源(可发现的)。此服务规范可以供服务使用者进行搜索、绑定和调用。服务提供者对服务规范实现进行实现,并向服务使用者交付服务质量要求。服务将由声明性策略进行控制,因此支持可动态重新配置的体系结构样式。

第二,什么是面向服务?以我们的服务定义为基础,面向服务是一种将业务作为一组相关联的服务集成的方式。我们谈的仍然不是技术;我们谈论的是一种看待业务及其操作方式的新方法。
什么是 SOA?SOA 是一种支持面向服务的体系结构样式。SOA 是一种用于根据需要对资源进行关联的企业级 IT 体系结构。这些资源被表示为与业务一致的服务,这些服务可以参与和包含到价值网、企业或业务线中,以满足业务需求。


最后,什么是组合应用程序?它是一组集成的服务。组合应用程序是为了支持业务的各项功能而装配和组合到一起的实际运行的服务。SOA 应用程序的主要结构化元素是服务,而不是子系统、系统或组件。


SOA 不是新概念;Common Object Request Broker Architecture(CORBA)和 Distributed Component Object Model(DCOM)早就提供了类似的功能。然而,这些对于服务定位的解决方案受一些问题的困扰,如紧耦合场景和所有权设计及实现。

 

服务与组件


什么是服务?服务只是一些应用程序功能,它们被发布成业务流程的组件。同组件一样,它提供了独立的构建模块,这些模块共同代表业务应用程序环境。服务是明确定义的、独立的工作单位,不依赖于上下文或其它服务的声明,由服务提供者执行来完成服务客户所需的最终结果。提供者及客户都通过代表他们自己的软件组件来承担职责。使用 SOA,所有的业务任务或流程都可以被设计并作为互联网(或其它任何网络)上使用的服务来构建。

软件组件体系结构已经作为应用程序开发的许多领域中的标准设计范例而形成了。它从面向对象的技术发展而来,通过提供高级别的提取并将低级别的对象封装进可复用的技术组件(调整以适合于业务操作并可以被反复设计、开发和提炼)中而实现。

为了解释组件和服务之间的关系,通过阅读组件如何被定义成“可执行的代码单元,它提供了相关服务的物理黑盒封装。仅通过包含交互标准的一致的、发布的接口才能访问它的服务。组件必须能连接到其它组件上(通过通信接口) 来组成大组”(企业系统中基于组件的开发:应用选择透视图——请见参考资料)可以得到启发。

附:实例

SOA面向服务的业务转换在零售业中的最佳实践

相关文章推荐

webservice第二篇【自定义webservice服务、soa、uddi概念、soap协议】

自定义webservice服务我们在上一章节中已经使用wsimport生成本地代理来调用webservice的服务了,其实我们自己写的web应用程序也是可以发布webservice的我们发布了webs...
  • hon_3y
  • hon_3y
  • 2017年07月31日 20:04
  • 111

[SOA] Mule ESB 3.x 入门(一)—— 消息流

关于Mule ESB,简单来说Mule接受一个消息,按照某种顺序处理这个消息,这样的处理可导致多种结果。有时,Mule改变或变换消息返回到原来的消息来源(request-response)。或者,在其...

Oracle SOA平台1——概述

Oracle的SOA方案的一个现实驱动力来自于在收购了多家应用厂商后,Oracle需要使用一个先进的架构和平台灵活无缝地把这些应用集成起来,这个架构就是Fusion Architecture,这个架构...

SOA——面向服务的体系架构

上一篇博文中提到了“紧耦合”的现象,如何解决?SOA,采用面向服务的体系架构。   一、What?   SOA=Service-oriented Architecture面向服务的体系结构      ...

热门话题:使用WCF实现SOA面向服务编程(二)——实现简单的WCF开发实例

在WCF里,各个Application之间的通信是由EndPoint来实现的,EndPoint是WCF实现通信的核心要素。一个WCF Service可由多个EndPoint集合组成,每个EndPoin...

深入理解Java SOA 架构Dubbo系列—— 第一回 结缘

一年半以前,我在一家创业公司从事服务器端开发工作,虽然当时公司已经拿到了6000w的A轮融资,并且App已经有超过百万的日活,开发团队已经有10几个人。但是看一眼服务器的代码,却感觉和笔者本科时候做的...
  • hopeztm
  • hopeztm
  • 2016年09月10日 22:35
  • 14930

从All-In-One到SOA——技术及架构的演进过

首先要完成业务拆分、服务规划,前期规划的好,后期的开发、维护成本能降低很多。同时也要考虑到未来业务变化,尽管我们不能预计到可能会发生哪些变化,但是我们可以从架构设计上尽量做到灵活、适应能力强,能够再最...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SOA 的定义 ——谢炯
举报原因:
原因补充:

(最多只允许输入30个字)