管理应用编程接口(api)服务器配置在软件生命周期部署中的一系列部署的制作方法

文档序号:9672519阅读:374来源:国知局
管理应用编程接口(api)服务器配置在软件生命周期部署中的一系列部署的制作方法
【专利说明】管理应用编程接口(API)服务器配置在软件生命周期部署中的一系列部署
[0001]相关申请的交叉引用
[0002]本申请要求编号为61/830508、题为“Environmental izat1n Technique forPromot1n of Applicat1n Programming Interface(API)Server in LifecycleSuccess1n of Deployments”(用于在部署的生命周期演替中促进应用编程接口(API)月艮务器的环境化技术)、20 13年6月3日提交的美国临时申请以及编号为6 1/8 29647、“Environmentalizat1n Technique for Promot1n of Applicat1n ProgrammingInterface (API) Server in Lifecycle Success1n of Deployments”(用于在部署的生命周期演替中促进应用编程接口(API)服务器的环境化技术)、2013年5月31日提交的美国临时申请的优先权,上述申请各自被通过引用合并与此。
【背景技术】
技术领域
[0003]本发明一般地涉及分布式计算系统中的接口,尤其涉及用于中介、转换、守护和/或管理应用编程接口(API)的网关和/或代理型工具。
[0004]相关技术
[0005]应用编程接口(API)已被长期用来规定软件组件如何与彼此交互。通过定义API,程序员或系统架构师可规定可由一个组件用来与另一组件交互的调用、方法调用和/或消息,这通常是在不展示API “背后”的软件、数据和协作的内部构件的情况下进行的。
[0006]随着每天部署的web和移动应用的数量和种类的增加,并且考虑到针对企业应用的多样的生态系统的基于云的存储、应用以及服务平台的持续增长的重要性,对于这些应用和平台用来协作的接口(API)的管理是一项不断扩大的挑战。展示和/或使用API的应用和服务的纯粹组合式的激增产生了显著的生命周期管理方面的挑战,而对于安全性、可用性以及缩放性要求的需求需要针对API部署的综合性方法。
[0007]一种由Vordel (现在是Axway,Inc.(Axway公司)的一个部门)推行的方法是部署API服务器运行时环境,其中多样的且不断进化的API集以及在这些API中穿行的信息事务可被部署、守护、监视、经受控制和监管等等。依赖于诸如Axway API服务器之类的产品,企业能够有效地部署和管理移动客户端应用用来与云中的企业数据和服务交互的API或者业务伙伴用来交换数据或执行事务的API。
[0008]随着API服务器技术的普及性和市场渗透率的增长,需要经改善的方法来管理API部署的生命周期方面。在一些情况下,期望在API的开发、测试及产品部署的容易性和速度方面的改进。
[0009]概述和描述
[0010]已经发现API服务器配置的一系列部署可使用软件工具来管理,该软件工具允许使用预定义的、用户/企业定义的、和/或可扩展的构造块(例如,策略、过滤器、监听器和/或外部连接构造块)集来对API服务器的初始定义(例如,在开发环境内),可针对这些构造块将其特定参数、对象、谓语等标识为特定于部署环境。以此方式,如此定义的API服务器配置的计算机可读介质编码可被分解为因环境而异的部分以及是(或可被视为)与环境无关的部分。当将一给定API服务器配置从开发环境部署推进至测试或产品环境部署时,该开发环境配置的计算机可读介质编码被“环境化”,以便将策略、过滤器、监听器和/或外部连接实例的环境中立方面与因环境而异的方面分开。一旦分开(例如,分成了环境中立策略包和环境包),API服务器配置可通过专门化环境包同时维护对于策略包的配置控制而被推进到部署的生命周期演替中的后续环境。
[0011 ]在一些情况下,典型的企业级客户可能具有若干个环境,其中API服务器配置可能从开发移动到产品。例如,这可包括完全分开的开发、测试、以及产品域。包可根据策略开发者所开发的策略来被部署在这些环境中。策略开发者准备用于推进到上游环境(例如,测试和产品环境)的配置。这可包括决定哪些设置是因环境而异的,并且可假设具有策略开发和配置工具(例如Policy Stud1)方面的专业知识。每个环境可由不同人员来处理。例如,策略开发者可负责开发环境,API服务器管理员可负责测试环境,而API服务器操作员可负责产品环境。API服务器管理员和API服务器操作员可不具有关于策略开发和配置工具方面的专业知识。因此,当配置被推进到上游时,API服务器管理员和API服务器操作员可能不能够在其相应环境中充分实施各策略。
[0012]另外,为了标识哪些设置是因环境而异的以及哪些是与环境无关的,API服务器管理员或API服务器操作员可能需要导航服务器配置来标识什么需要被改变。这可能是耗时的,并且从上游用户的角度来看,这增加了 API服务器的复杂性。
[0013]在根据本方面的一些实施例中,一种管理API服务器配置的一系列部署的方法包括定义所述API服务器的第一配置,准备所述API服务器的第二配置,以及准备所述API服务器的第三配置。所述第一配置被实现为部署包的计算机可读介质编码,所述部署包至少将所定义的第一配置的策略、监听器以及外部连接组件与特别针对所述API服务器在所述API服务器的开发环境部署中的操作的环境设置编码在一起。所述第二配置被实现为以下的计算机可读介质编码(i)从所述第一配置中推导出的策略包以及(ii)特别针对所述API服务器的测试环境部署的可分开的环境包。所述第三配置被实现为以下的计算机可读介质编码(i)推导出的策略包以及(ii)特别针对所述API服务器的产品环境部署的可分开的环境包。所述开发环境部署的环境设置和特别针对所述API服务器的测试和产品环境部署的环境包相对于它们相应的部署环境规定不同的外部资源定位符、加密证书以及用户认证参数。
[0014]在一些情况或实施例中,方法进一步包括(基本不改变地)将所述API服务器的策略、监听器以及外部连接组件从API服务器的开发环境部署推进到后续的测试和产品环境部署,以及通过专门化特别针对后续的测试和产品环境部署的环境包来专门化针对后续的测试和产品环境部署的API服务器的实例。在一些情况或实施例中,方法进一步包括通过专门化特别针对相应的产品环境部署的环境包来专门化针对相应的产品环境部署的API服务器的多个实例。针对相应的产品环境部署而专门化的多个API服务器实例中的至少一些被相关联作为负载平衡或故障切换组的成员。所述API服务器的经推进的策略、监听器以及外部连接组件被实现在API服务器的后续的测试和产品环境部署中作为推导出的策略包的与环境无关的版本的一部分。所述第一配置可执行在所述开发环境中。
[0015]在一些情况或实施例中,方法进一步包括基于所述API服务器在测试和产品环境中的一个或多个中的执行,更新所述开发环境部署包并且重新推导针对与所述API服务器的测试和产品环境部署中的一者或两者的相应环境包有联系的重部署的策略包。环境包中特别针对测试环境部署的环境设置替代了特别针对开发环境部署的环境设置。此外,环境包中特别针对产品环境部署的环境设置替代了特别针对测试环境部署的环境设置。环境包中特别针对产品环境部署的环境设置替代了特别针对测试环境部署的环境设置。
[0016]在一些情况或实施例中,开发和测试环境被部署在同一域中。此外,所述策略组件包括至少定义所述API服务器的部分操作的策略规则定义,并且其中所述策略规则组件中的至少一些包括实施安全性、依从性、以及操作策略的环境设置。所述监听器组件创建与所述API服务器的客户端有关的协议交互,并且其中所述监听器组件包括接受使用与所述策略组件兼容的协议的请求的环境设置。协议包括HTTP和/或JMS。外部连接组件创建到节点的连接,该节点存储影响API服务器的操作的数据。外部连接组件包括被查询以认证API月艮务器的客户端的环境设置。节点是数据库或认证存储库。
[0017]在一些情况或实施例中,响应于模拟的API业务和外部配置查找,所述第一配置在所述开发环境中执行。另外,响应于更新针对所述测试环境的环境设置,所述第二配置在所述测试环境中执行。另外,响应于更新针对所述产品环境的环境设置,所述第三配置在所述产品环境中执行。
[0018]在一些情况或实施例中,方法进一步包括接收因环境而异的输入并且基于所接收的因环境而异的输入来更新特别针对API服务器的测试环境部署的可分开环境包。方法还可包括接收因环境而异的输入并且基于所接收的因环境而异的第二输入来更新特别针对API服务器的产品环境部署的可分开环境包。
[0019]在一些情况或实施例中,基本不改变地将所述API服务器的策略、监听器以及外部连接组件从API服务器的开发环境部署推进到后续的测试和产品环境部署包括将包括所述API服务器的策略、监听器和外部连接组件的配置文件传输到目标环境。传输到目标环境包括使用文件传输协议来传输所述配置文件。
[0020]在一些情况或实施例中,基本不改变地将所述API服务器的策略、监听器以及外部连接组件从API服务器的开发环境部署推进到后续的测试和产品环境部署包括将包括所述API服务器的策略、监听器和外部连接组件的配置文件加载到存储库,以及从所述存储库检索所述配置文件。配置文件可在开发和测试环境中执行。
[0021]在一些情况或实施例中,基本不改变地将所述API服务器的策略、
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1