面型服务的架构(SOA)是一种用于创建和使用业务流程的计算机系统的架构风格。在其整个生命周期内,SOA允许企业应用之间相互交换数据,并且成为业务流程不可或缺的一部分。
SOA不能单纯地只从技术角度看成是一种服务架构,它还是一种策略、做法和框架。使用它我们可以确保所提供的服务是正确的并且被正确使用了。
SOA是在软件服务的基础上创建应用。这些服务基本上是毫无联系的功能单元,相互之间没有调用关系。
SOA可以把相当大的功能模块和相互的约速关系紧密结合在一起,从而形成特殊的企业应用。这些应用几乎完全是从现有的软件服务上一步步建立起来的。
因此,每个SOA架构都至少扮演了下列三个角色中的一个角色:
·SOA是一个Web服务,它主要负责决定企业向外界暴露的信息类型。SOA服务提供者需要综合考虑可用性和安全性的影响,权衡利弊。
·服务代理者和服务寄存器负责保证信息能被服务查询者正确访问。服务代理者需要决定传递信息的数量。
·服务请求者或Web服务客户端请求服务,并绑定到服务供应者,以调用它提供的Web服务。
SOA所面临的挑战:由于设计模式的不同,一个单一的应用可能会产生非常多的错误。各种各样的服务还要相互作用。所以,管理这些服务本身就是一个极大的挑战。
·为SOA的每个界别提供安全性是另一个挑战。SOA本身提供一个非常合理的安全模型。
·SOA还需要面对其它方面的挑战,比如可移植性。部署这种类型的服务需要很多技巧。
·构建服务基础设施。
开始部署SOA之前需要考虑的几件事:
1.深入了解自己的义务
用户在试图自动化自己的业务流程之前,需要深入了解自己的业务。SOA可以使IT与业务紧密结合在一起,但是这也会带来一系列的问题。
2.选择功能
提供的服务必须简单、通用的、紧凑并且切中要点。
3.考虑硬件
软件并是不是服务唯一的关键因素。部署SOA同样也需要考虑硬件设施。
4.防火墙的可用性
防火墙是一种安全软件,可以保护系统免受间谍软件和病毒的侵袭和破坏。SOA也必须能够与防火墙兼容。
5.未来的计划
如果SOA的扩展到一定程度,那么就应该有一个单独的SOA治理系统。
6.全面掌握有关SOA系统的相关信息
系统用户必须对SOA有一个全面的了解,比如该系统是否能处理不断增加的负载和减负载服务以及网络基础设施。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
作者
相关推荐
-
事件驱动框架和SOA在空军的应用
空军正在利用SOA来改善数据共享,并实时跟踪战机,美国空军机动司令部的Michael Marek解释了企业可从中学习的经验。
-
揭秘New Relic APM技术细节
New Relic应性能管理(APM)套件主要用于Web软件开发。它允许用户在面向服务的架构(SOA)上跟踪关键事务性能,并且支持代码级别的可见性来评估特定代码段和SQL语句对性能的影响
-
仅凭SOA和云无法解决业务数据管理风险问题
SOA和云可以是某些恼人问题高效的解决方案;这一点我们已经知道了。但是也要记住它们并不是所有事情的直接答案,特别是当你的问题是业务数据管理风险,而不是技术问题时。
-
购买应用集成工具可以采取平衡做法
购买应用程序集成工具需要好好看看你的公司需求,知道从供应商里面要寻找哪些关键功能。