服务为导向的架构似乎是越来越多的热引用的这几天,但之后询问该办公室,我们发现,我似乎得到许多不同的定义。如何将你们定义SOA?你会怎么考虑的官方定义?

有帮助吗?

解决方案

作为马丁*福勒说,这意味着不同的东西,对不同的人。他的文章题目是很好的虽然它不是一个相当的定义。

http://martinfowler.com/bliki/ServiceOrientedAmbiguity.html

它可以解释,难度来了一个具体的定义。

其他提示

维基百科:"SOA是一个软件架构使用的松散耦合的软件服务,以支持的要求的业务流程和软件的用户。网络上的资源在SOA环境可作为独立的服务,可不知道他们的基本平台的执行情况。"

SOA是不是新的,但它有潜力实现一些令人惊奇的事情。但本组织必须做好准备:企业认为在进程的大问题

我会去:

定义一系列的无国籍、客户 无关的商业运作创造了 可以利用多 应用程序。

SOA包括设计的部件(即, 服务 的),可以使用的代码,不论的执行情况(即,任何操作系统或语言).一个单一实例的服务也可使用由多个应用程序,然而,例如,一个DLL必须重复针对每个应用程序和要求相同,实施技术作为连接应用程序。

服务在SOA的设计通常是实现为可互操作的网服务。

没有正式定义,因为瑞恩提到的感受?然而,我找到托马斯Erl的整个面向服务相当的结构良好的和相关的。在这里的定义是SOA从他的 SOA词汇表 (更多):

面向服务的架构代表的建筑模型,旨在增强灵活性和成本效益的企业,同时降低总体负担,它在一个组织。

托马斯Erl的是作者的许多SOA的标题,他们中的大多数收到认可SOA供应商包括IBM、Oracle和微软。美好的事情 他的书 是的,他们是作为SOA供应商的独立成为可能。这意味着你了解更多关于服务的方向本身并不在于某些供应商的中间,支持SOA。

我同意所有的人这点你Fowler这一点。基本上它就像这样:服务为导向的架构得到了一个声誉良好,因此任何人希望能与良好,他们呼吁SOA。在现实中,它有一个很大的缺点,并可以创建一个面向服务的僵局或依赖导向的架构。

这是我走在一个定义:服务为导向的架构是一个系统融合和代码重复使用的方法,应用程序依赖于连接以提供服务的其他运行的应用程序的网络。这种不同成分的架构、软件组件是共用的静态应用程序之间在库的形式或软件开发工具包,例如。

澄清在这里-"面向服务的结构是一个 系统整合 和代码重复使用的方法,应用程序依赖于 连接以提供服务的其他运行中的应用程序整个网络."

我有一个方案,其中两个j2ee应用程序的集成使用活动驱动的信息。这里的上述短语 系统整合连接以提供服务的其他运行中的应用程序整个网络 保持良好。我可以叫这个SOA?

以下原则将会保持良好的在这里 1)无国籍状态 2)面向消息-松散耦合的事实上de耦合 3)扩展。

然而,以下不适用 1)平台的独立性不应用程序正被纳已经设计工作在一个不同的平台。2)应用程序是普通j2ee应用这没有设计有所有soa的概念。

我试图定义SOA 我的一个博客.这里有一个摘录...

多年来,它已经标准的做法单独的功能,功能、课程和模块。这个想法一直是,这些较小、高度专业化组成部分更容易分享和保持整体的代码块。

在功能上,SOA是没有太大的不同。目标是相同的-重复使用性和易维护。最大的差别-在这种情况下的一个网络服务SOA是,共同图书馆包括在应用程序替换为HTTP的呼吁。

这里有一个定义:

SOA软件在设计.列入毫无意义的,过度臃肿、功能性的接口框架,称为一个建筑在一个漂亮的网站有一个3d图形的文件夹的飞行从一个侧面向其他在那里"dir/s>a.txt |ftp s:upload.ftp"所做的工作。

软件组件是不砖,不能被普遍通过共同的功能模式和结构出现在企业从良好做法、不良好的设计。软件不架构,它的工程。

SCRUM!

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top