随着Web在中小企业使用Web服务方面发挥巨大的作用,这些企业使用最廉价最简单的方法来实现B2B Web服务交互变得越来越可能。使用表示状态传输(Representational State Transfer ,REST)等方法让企业有了一种简单而直接的基于HTTP的方法来进行基于Web服务的集成,这足够满足很多中小企业的需求了。然而,我们都知道Web服务,尤其是基于REST的Web服务并不能满足对架构的需求,并且更不能满足对安全、异步、事件驱动和过程驱动服务等复杂需求。而这些即使是最小的公司都想得到的。
由于缺乏能提供松耦合服务的架构,对SOAP的需求。。当服务从消费它的软件中解耦出来之后,就能对服务提供者或消费者进行升级或修改而不必打破它们。结果是,中小企业必须把实现面向服务架构考虑成构建、部署和管理他们服务以及服务环境的方法,而不是仅仅是为了暴露和与服务接口通信而关注开销低、复杂度低的协议。此外,正如我们经常讨论的那样,SOA比这些接口要复杂很多。它还与定义服务使用的合约和策略有关,因此,我们能获得重用和业务灵活性的好处,而使用简单的协议无法满足这些要求。
大企业已经转移到SOA,因为在复杂的异构IT环境中充满着经常性的不可预测的业务变更,而SOA此时非常管用。但是,中小企业几乎没有复杂的异构的IT环境,而且他们也没有在和大公司一样的不可预测的业务变更。他们通常拥有更加可控的IT环境来应对这些变更。当这样一个动态业务环境影响到某个中小企业与其它公司集成时,。毕竟,为什么只有大公司就能得到业务灵活性、重用和低价的IT基础设施的好处呢?
用松耦合B2B Web服务进行变更
要理解为什么中小企业,甚至那些只有外部集成问题的公司,应该考虑SOA,很重要的一点就是要看到这样的服务所处在的动态环境。为B2B消费暴露了服务的公司必须面对一个事实,那就是他们将每年多次构建和编辑多种服务,用新的功能升级这些服务,维护与这些服务有关的合约和策略,还要持续提供或撤消对这些服务的访问。相应的,消费这些服务的公司的客户或合作者也不得不基于他们自己的安全和协议需求来要求很大范围的服务合约以及松耦合。于是,中小企业对他们服务的任何变更都不会影响到他们的业务。如我们所看到的,为了与第三方合作,暴露一个服务接口只是提供服务要面对的所有困难中的很小的一部分。
对于提供者和消费者,所有这些功能的公共主题就是变更。如果服务提供者和消费者的需求不经常变化,那么就不需要为处理这种变更而构建架构而争辩了。取而代之的是中小企业会很容易对B2B交互的API达成一致。毕竟在过去,用于B2B集成的简单API在不经常变化的情形下已经可以工作了。但是,在一个API接口中进行像上文列出的变更需要对服务器和客户端进行重新编程和重新部署,因为这些交互紧紧耦合在一起。
结果,就算中小企业也必须在架构和基础设施上进行投资,才能实现SOA的灵活性好处。的确,他们需要足够的功能进行服务的运行时管理、管理与服务有关的持续变更的元数据、安全和策略网关来满足安全和合作策略需求。当然,他们还必须在架构上进行投资。当某个中型公司提供了服务后,他们或许会在内部设置上面的基础设施。事实上,小公司通常会寻找一个第三方来主管服务。不管那种情况,他们都需要SOA架构,因为它提供了实现的整体设计。
ZapThink的观点
当所有这些功能在SOA的环境中变得越来越实用时,一定要记得灵活性是随价格带来的。管理、安全、元数据和集成基础设置都潜藏在SOA实现之下。毕竟,松耦合不是魔术、也不容易达到。它需要严格的设计和复杂但灵活的基础设施。
很多中小企业已经开始利用Web服务来降低满足他们外部集成需求的陈旧方法的费用。但是,单单增加Web服务接口的方法和过去的API方法一样不灵活。中型企业只有通过构建SOA应用并利用足够灵活的松耦合的Web服务才能跟上业务环境持续不断的变化。
文章来源于领测软件测试网 https://www.ltesting.net/