当前位置: 首页 > 专利查询>微软公司专利>正文

基于面向服务流水线的体系结构制造技术

技术编号:5408917 阅读:250 留言:0更新日期:2012-04-11 18:40
提供了采用流水线体系结构来适应用于扩展现有功能或提供附加功能的第三方扩展的面向服务系统。用户或第三方提供的插件通过元数据来注册并且在流水线中与平台操作一起执行。该流水线可用新上传的插件来在进行中扩展。用于对同步或异步流水线操作进行排序的依赖性分析使得多方能够扩展系统并可预测地操作。循环检测机制阻止通过偶然或恶意创建无限循环而滥用系统资源,非退化无限循环除外。

【技术实现步骤摘要】
【国外来华专利技术】基于面向服务流水线的体系结构背景主存服务正变得日益常见,其中各种应用程序在共享硬件上服务大量消费者(称 为多承租人系统)。主存服务可以向多个客户机提供同一类型的服务或向单个客户机提供 多个服务。如此,主存服务能是相当复杂的系统。复杂主存服务系统的代表性示例是基于 web的客户关系管理(CRM)服务。CRM解决方案通常在主存计算机应用程序环境中提供创建和维护客户的从第一次 接触到购买和售后的清晰形象所需的工具和能力。对复杂承租人而言,CRM系统可提供帮助 改善销售和营销组织瞄准新客户的方式、管理营销活动、以及推动销售活动的特征和能力。 CRM系统可包括由承租人内部或外部的用户单独地或以共享方式利用的许多硬件和软件组 件。诸如主存CRM服务等复杂系统需要响应于客户机请求来执行一系列操作。这些操 作可以是同步的或异步的,可具有次序依赖性,并可由不同的各方来实现。在实现这样的系 统时的一个挑战是管理该系统的复杂性,尤其是在第三方提供者添加操作时。这一挑战在 其中服务提供者不完全信任第三方扩展的软件即服务(SaaS)应用程序中恶化。概述提供本概述是为了以简化的形式介绍将在以下详细描述中进一步描述的一些概 念。该概述并非旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确 定所要求保护的主题的范围。各实施例针对提供采用流水线体系结构的主存服务。用于扩展现有功能或提供附 加功能的第三方扩展通过元数据来注册并在流水线中与平台操作串行地执行,其中操作的 次序和每一操作的阶段通过元数据来交换,以便均衡地对待系统功能和自定义功能。还可 以使用循环检测机制来阻止通过偶然或恶意创建无限循环而对系统资源的滥用。通过阅读以下详细描述并查阅相关联的附图,这些和其他特征和优点将是显而易 见的。可以理解,前述一般描述和以下详细描述均仅是说明性的,且不限制所要求保护的各 方面。附图简述附图说明图1是示出示例多承租人服务系统体系结构的示图;图2示出具有流水线体系结构的面向服务系统中的各主要组件;图3示出具有流水线体系结构的示例面向服务系统(CRM);图4是其中可以实现各实施例的示例联网环境的示图;图5是其中可以实现各实施例的示例计算操作环境的框图;图6示出用于管理具有流水线体系结构的面向服务系统中的操作的过程的逻辑流程图;以及图7示出用于具有流水线体系结构的面向服务系统中的循环检测过程的逻辑流程图。详细描述如以上简要描述的,可以在用于管理第三方插件功能的面向服务系统中实现流水线体系结构。在以下详细描述中,参考了构成其一部分并作为说明示出了各具体实施例或 示例的附图。可组合这些方面,可利用其他方面,并且可以做出结构上的改变而不背离本发 明的精神或范围。因此,以下详细描述并不旨在限制,本专利技术的范围由所附权利要求及其等 效方案来定义。虽然在结合在个人计算机上的操作系统上运行的应用程序执行的程序模块的一 般上下文中描述了各实施例,但是本领域技术人员会认识到各方面也可以结合其他程序模 块实现。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组 件、数据结构和其他类型的结构。此外,如本领域技术人员理解的,各实施例可以用其他计 算机系统配置来实施,包括手持式设备、多处理器系统、基于微处理器或可编程消费者电子 产品、小型计算机、大型计算机等等。各实施例还能在其中任务由通过通信网络链接的远程 处理设备来执行的分布式计算环境中实现。在分布式计算环境中,程序模块可以位于本地 和远程存储器存储设备中。各实施例可被实现为计算机进程(方法)、计算系统、或者如计算机程序产品或计 算机可读介质等制品。计算机程序产品可以是计算机系统可读并编码了用于执行计算机进 程的指令的计算机程序的计算机存储介质。计算机程序产品还可以是计算系统可读并编码 了用于执行计算机进程的指令的计算机程序的载波上的传播信号。参考图1,示出了示例多承租人服务系统体系结构的示图100。在一典型的多承租 人系统中,与不同的承租人相关联的用户可以从服务请求操作,该服务可执行涉及承租人 专用信息的同步和异步操作。如上所述,主存服务使用多方面的默认和定制功能来便于各种应用程序与大量客 户之间在共享硬件上的交互。例如,客户关系管理(CRM)服务可使与多个承租人相关联的 用户能够记录、跟踪、分析、以及处理联系人、销售线索(sales lead)等,同时向每一承租人 提供安全和自定义功能。这些所谓的软件即服务(SaaS)的某些自定义(或默认)功能能 以与内核平台操作一起注册和执行的第三方扩展或插件的形式提供。在一典型的主存服务环境中,可伸缩和冗余的一组web服务服务器112与承租人 数据存储114 一起工作来存储和处理与该服务的各个承租人相关联的数据。还可以通过另 一组服务器和/或数据存储来提供补充服务116。例如,不同的服务器组能以优化系统性能 的分布式方式来执行同步和异步处理。通过使用同步和异步进程的独立分发以及服务器和数据库之间的交互,能够使主 存服务组的任何部分都可以伸缩。因此,可以提供服务器(和/或数据库)的多个实例来 解决增加的工作负载、附加承租人、数据容量等等。在一操作中,主存服务接收输入数据(例如,CRM服务中的新联系人信息)并从用 户102请求处理。用户102可以与用于定制主存服务的用户应用程序、工具、和/或插件 104的独立系统相关联。与该独立系统相关联的数据可以存储在用户数据存储106中。用 户102可以向主存服务提供扩展(插件)以用于附加或定制功能,其中这些插件连同内核 平台操作一起注册和执行。根据一些实施例,这些插件不仅提供附加功能,而且还扩展服务 的现有默认功能。用户102可以自己提供插件或从第三方(未示出)请求插件来由主存服务注册。 在这样的场景中,主存服务可以与该第三方提供者直接交互以在平台中注册该插件。此外, 第三方提供者可以在用户(承租人)请求注册他们的扩展中的一个或多个时联系主存服 务,并提供使主存服务确保所提供的插件确实是用户所请求的插件的证书。当然,该复杂的交互可对服务造成控制其操作完整性和用户数据安全性的挑战。 不是所有的第三方提供者都是可信的源,可能存在与服务平台和插件相关联的兼容性问 题,并且将插件集成到服务的操作结构中可能不是简单的。根据一些实施例,可响应于客户机请求来串行地执行具有基于流水线体系结构的 插件功能的灵活且可伸缩的平台。请求对象可以作为参数传递到流水线中的每一插件,并 且每一插件可以创建或操纵响应对象。可以沿该流水线传递任意状态以在插件之间传递数 据。图2示出具有流水线体系结构的面向服务系统中的各主要组件。一种根据各实施 例的系统可以采用通过响应于客户机请求插入功能来定义灵活且可伸缩平台的流水线体 系结构。请求对象作为参数传递到流水线中的每一插件,该插件可以创建或操纵响应对象。 如果两个客户机请求操作同一流水线,则它们的行为应当相同。如此,这样的系统中的测试 案例矩阵与硬编码行为的系统相比减小了。在根据一个实施例的系统中,由流水线配置来表示要响应于客户机请求执行的动 作序列。流水线中动作的次序可以通过依赖图分析来确定。可以在不重新编译系统的情况 下通过在流水线配置中注册“插件”来配置新动作。这样,可以添加新本文档来自技高网...

【技术保护点】
一种至少部分地在计算设备(500)中执行以用于在面向服务系统中实现流水线体系结构的方法(600),所述方法包括:自动地配置用户构造的方案(604)接收与所述方案相关联的插件(231、232、234、235、236、331、332、335、336)(606)通过元数据注册所述插件(231、232、234、235、236、331、332、335、336)(608),其中所述元数据包括以下至少一个:所述插件的次序和阶段;以及响应于从所述用户接收到对动作的调用,在执行流水线中根据接收到的次序连同一个或多个内核平台操作一起执行所述插件(231、232、234、235、236、331、332、335、336)(610)。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:A塔卡奇G阿拉什A简迪塔卡恩MJ奥特N古普塔
申请(专利权)人:微软公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1