SOA的崛起导致了集成网关为了应用开发并实现更好的治理和安全进行会聚。不管有多少人希望把API视为是与SOA不同的东西,Forrester分析师RandyHeffner却把API管理视为是对SOA集成讨论的延伸。SOA应用网关可支持安全、治理,并充当SOA相关消息传递的集成点。
一方面,Mashery和Apigeetend的API管理工具对服务的配置和假设都要更加简单,但是提供了更多的工具给业务开发者。另一方面,像Layer7这样的供应商的工具对治理和安全支持更强。
Heffner说组织容易陷入的一个风险,从较轻量的网关开始,然后发现他们需要来自另一个平台所提供的最大深度和广度的安全和管理能力。
当一个组织需要身份传播时,联合身份以及更深度的安全可追溯性时,网关产品可帮助这方面的功能。然而,为了满足架构的完整需要,也许仍然有必要引入像IBMTivoliFederatedManager或PingFederate这样的联合身份产品。Heffner说:“这往往太过昂贵,组织会进行妥协,找出更简单架构的实现方法,从而不需要真正涉及到最大深度的安全需求,但至少可提供某些可行的折衷方案。”
支持现代架构
已有的SOA集成网关是设计用来为上一代的企业架构服务的。“今天,SOA应用已遍布基于云的服务和本地的服务,下一代的SOA集成网关需要穿越防火墙无缝地管理服务,”MuleSoft负责产品管理和全球销售工程的主管MateoAlmentaReca说。
此外,许多现有的SOA网关是针对SOAPWeb服务时代设计的。而现在,企业需要处理非常多的异构式混合服务、端点以及API,并且需要用单个解决方案对其进行管理。随着API变得越来越重要,企业的SOA网关需要为API管理策略提供基础,因为SOA治理和API管理是紧密捆绑在一起的。
许多现有的SOA网关采用的是硬件设备模式,这从部署的角度来看是具有吸引力的,不过随着时间推移往往会引发问题,因为这些网关会成为单点故障,而且其伸缩性往往不怎么好。“随着规模的增长,有些企业最终需要提供成百上千台设备,成本非常高,也很难维护,”AlmentaReca说:“这种方案对于私有云方面的举措也很具挑战,因为硬件设备并不适合于云的弹性。”
为了实现虚拟和可伸缩,现代方案采用内存网格技术。这一方案是Google和Facebook这类巨头得以实现伸缩并解决像实时大数据分析这样的重要用户案例的方法。
在考虑SOA网关策略时,重要的是随时记住整体集成策略。“这并不仅仅事关服务和API的管理和安全,还需要创建和设计那些服务和API,这些服务和API还要托管和公布,要围绕着它们创建社区、形成互动,最重要的是,能够集成它们,”AlmentaReca解释道:“你需要端到端一起考虑这些策略,你对工具的选择应当反映同样的整体方案。”
管理混合云
传统SOA架构的实施是用来解决应用、内部企业部门或紧密的合作伙伴间的企业集成挑战的。为了适应移动和云技术崛起而出现的混合型企业扩张,需要应用和数据资产进行安全、可靠的对外发布,而这些东西此前是被严格保护的。
JaimeRyan是Layer7的合作伙伴解决方案架构师,他说旧一点的连接解决方案缺乏这一架构的关键组件—虚拟化部署,云提供能力以及伸缩、联邦及授权身份管理,开发者管理,多云运营和测量,扩展性,以及新消息格式和协议都是引领移动和跨平台使用的组件。
以下是部分挑战的例子:
支持XML、SOAP、WS-*标准,除了支持传统内部协议以外,还必须对JSON、OAuth、REST交互模式以及诸如WebSockets之类新协议的对等支持。
现有的单点登录身份管理工具,是为特定交互模式以及内部容器中的知名用户建立的,无法处理新的移动友好型身份令牌及随移动部署而来的多重身份(用户、开发者、应用)。
传统服务注册/容器平台无法处理外部或合作伙伴开发者,不能很好地映射基于REST接口的、更松散的定义、文档及生命周期。
这些挑战已经扩展了SOA集成网关需要提供的治理范围。Ryan说:“为了解决新的混合型企业的这些担忧,这些解决方案需要对接口、身份、开发者及服务运营、生命周期进行治理。”
Ryan建议组织考虑以下若干最佳实践:
现代集成解决方案必须能在无需再造内部服务层的情况下,利用JSON或XML来发布REST风格的接口。这可能意味着把现有SOAP作为REST动态发布出去,需要对移动交互模式进行优化,通过压缩和缓冲降低带宽和时延等。
作为传统基于SAML的身份认定的外部关联,OAuth和OpenIDConnect为授权身份和归属组成了新的移动及以API为中心的规范。这些也需要搭桥联系起来。
开发者门户,无论是针对公众、合作伙伴还是私有开发者的,都需要为这些接口的业务所有者提供管理层—定义谁有访问权,确定访问的控制、计量及潜在的货币化方式。
这些集成解决方案必须足够灵活,可部署到应用和数据存在的任何地方,包括全球化虚拟数据中心和云平台,且可从集中化的运营和生命周期管理仪表盘进行管理。
通过对围绕着集成网关的解决方案的集中化,企业可确保围绕着访问控制、开发者档案及服务生命周期进行定义的策略可以以安全可伸缩的方式执行。此外,网关还为其他后端或基于云的服务提供了一个集成点。