1、SOA的定义
SOA全名为面向服务的体系结构(service-oriented architecture),它是一种软件架构模型。SOA将应用程序的各个功能单元间通过定义良好的接口和契约联系起来,而这种不同功能单元被称作为服务。服务间接口是采用中立的方式进行定义的,它独立于实现服务的硬件平台、操作系统和编程语言等环境。这样,服务间将采用通用的、统一的和与系统平台无关的方式进行交互。SOA的特性是“服务的封装”、“服务的重用”和“服务的互动”。SOA系统的需求源自于业务应用系统需求,SOA系统可根据业务的需要不断的将每一个独立的“服务”组合,以适应不断变化的环境,比如经常改变的合作伙伴关系、业务级别、业务重点、政策、行业地位以及其他与业务有关的因素的更改,每一个服务都是一个独立的个体。
2、SOA的应用技术
首先,SOA并不是一种新的技术,它是一种应用架构模型,是不完全依赖于技术的应用架构模型,SOA的技术实现方式可以有多种,是多种技术的集合架构模型。其次,SOA 是通常基于可扩展标记语言(eXtensible Markup Language,XML),通过使用WSDL语言(称为 Web 服务描述语言(Web Services Definition Language,WSDL))来描述接口。再次,Web Services并不是实现 SOA 的惟一方式,以前我们所熟识的 CORBA 是另一种实现方式。SOA鼓励使用可替代的技术和消息机制,通过把服务联系在一起来满足应用。而且,SOA 的系统并不排除使用面向对象的设计来构建单个服务,但是其整体设计却是面向服务的。最后,为了建立体系结构模型,我们所需要的并不只是服务描述,我们还需要定义整个应用程序如何在服务之间执行其工作流,尤其需要找到业务的操作和业务中所使用的软件的操作之间的转换点。所以,SOA 应该是将业务的商业流程与它们的技术流程联系起来,并且映射这两者之间的关系。因而,工作流在 SOA 的设计中扮演重要的角色。
3、SOA的商业应用思想
SOA的一个中心思想就是让企业应用彻底摆脱面向技术的解决方案的束缚,轻松自如的应对企业商业服务变化、发展的需要。企业IT架构环境中单个应用程序是无法包容用户的各种业务需求的,即使是一个大型的ERP解决方案,仍然不能满足这个用户不断膨胀、变化的业务需求。原来,为了对市场快速做出反应,商业企业只能通过不断开发新应用、扩展现有应用来支撑其现有的业务需求。今后,商业企业采用SOA后,通过将注意力放在服务上,应用程序能够集中起来提供更加丰富、目的性更强的商业流程,其结果就是,基于SOA的企业应用会更加真实地反映出与业务模型的结合。SOA商业应用思想就是为“业务驱动服务,服务驱动技术”。服务是从业务流程的角度来看待技术的,这同一般的从可用技术所驱动的商业视角是不同的。服务的优势已经清晰可见,服务同业务流程结合在一起,能够更加准确地表示业务模型、更好地支撑业务流程。对于企业用户来说,SOA根本的目标是解决“信息孤岛”问题,并能提供随需应变的服务。SOA通过将原有的应用和资源转变为可共享的标准服务,打破了“信息孤岛”。企业决策者只需要根据企业的策略来定制流程,把应用作为服务“随需获得”,而无需考虑底层的集成,这样就可以实现IT和企业业务之间的“业务驱动服务,服务驱动技术”。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
相关推荐
-
事件驱动框架和SOA在空军的应用
空军正在利用SOA来改善数据共享,并实时跟踪战机,美国空军机动司令部的Michael Marek解释了企业可从中学习的经验。
-
把软件架构演进体现在栈上
曾几何时,企业架构师要为了得到承认和支持而抗争,但这种时候正在过去。大多数企业现在已经意识到实现业务流程中敏捷性和效率需要业务目标、人力资源以及信息技术的结合。
-
揭秘New Relic APM技术细节
New Relic应性能管理(APM)套件主要用于Web软件开发。它允许用户在面向服务的架构(SOA)上跟踪关键事务性能,并且支持代码级别的可见性来评估特定代码段和SQL语句对性能的影响
-
仅凭SOA和云无法解决业务数据管理风险问题
SOA和云可以是某些恼人问题高效的解决方案;这一点我们已经知道了。但是也要记住它们并不是所有事情的直接答案,特别是当你的问题是业务数据管理风险,而不是技术问题时。