【技术实现步骤摘要】
本专利技术涉及持久保存,尤其涉及应用程序实例和查询存储。
技术介绍
长期运行的应用程序实例,诸如例如工作流应用程序的实例,通常得益于周期性地持久保存其工作以允许应用程序实例在错误、崩溃或机器失效之后恢复。持久保存工作还可允许应用程序临时地空闲并且使它们的资源得到重新分配。为了持久保存工作,应用程序主机可对应用程序实例的持久保存的状态和该实例的运行时状态进行协调以保证一致的检查点被创建。例如,实例的持久保存的状态可能需要与应用程序事务、消息通知、锁、 本地状态高速缓存等进行协调。一个或多个实例的持久保存的状态的权威性版本可被存储到此处被称为实例存储的存储中。在持久保存应用程序实例状态之后,可在实例存储中查询持久保存的实例状态的各方面,例如支持用于系统管理、诊断、健康监控、业务流程跟踪、报告、可视化或分析的应用程序工具。如此处使用的,查询及类似的术语泛指读取已存储的数据。独立于正在执行实例的主应用程序来构想和实现应用程序工具。
技术实现思路
此处描述的工具和技术通过还将对应的表示存储到一个或多个查询存储中可增强对实例存储中持久保存的状态表示的使用。这可提供好处,诸如允许应用程序工具在查询存储中查询应用程序状态而无需锁定实例存储。在一个实施例中,工具和技术可包括发出用于更新应用程序的实例的状态的实例持久保存命令。响应于该持久保存命令,可启动关于实例存储的事务。作为事务的一部分, 可将更新的第一表示存储到实例存储中,并可将更新的第二表示存储到队列中。在存储第一和第二表示之后可提交该事务。在提交事务之后,可处理第二表示以将更新的第三表示存储到查询存储中。如此处使用的 ...
【技术保护点】
1.一种计算机实现的方法,包括:发出用于更新应用程序的实例的状态的实例持久保存命令(222);响应于所述持久保存命令(222),启动关于实例存储(220)的事务;作为所述事务的一部分,将所述更新的第一表示(244)存储到所述实例存储(220)中;以及作为所述事务的一部分,将所述更新的第二表示(246)存储到队列(240)中;在存储所述第一表示(244)和所述第二表示(246)之后提交所述事务;以及在提交所述事务之后,处理所述更新的所述第二表示(246)以将所述更新的第三表示(282)存储到查询存储(280)中。
【技术特征摘要】
2010.07.27 US 12/843,8881.一种计算机实现的方法,包括发出用于更新应用程序的实例的状态的实例持久保存命令022);响应于所述持久保存命令022),启动关于实例存储Q20)的事务;作为所述事务的一部分,将所述更新的第一表示(M4)存储到所述实例存储(220)中;以及作为所述事务的一部分,将所述更新的第二表示(M6)存储到队列O40)中; 在存储所述第一表示(M4)和所述第二表示(M6)之后提交所述事务;以及在提交所述事务之后,处理所述更新的所述第二表示046)以将所述更新的第三表示 (282)存储到查询存储(280)中。2.如权利要求1所述的方法,其特征在于,所述事务包括锁定所述实例存储的至少一部分,但实现对所述更新的所述第二表示的处理无需锁定所述实例存储。3.如权利要求1所述的方法,其特征在于,还包括在所述查询存储中查询所述第三表示而无需锁定所述实例存储。4.如权利要求1所述的方法,其特征在于,所述更新的所述第二表示不同于所述更新的所述第一表示。5.如权利要求4所述的方法,其特征在于,处理所述更新的所述第二表示以将所述更新的第三表示存储到查询存储中包括将过滤器应用到所述第二表示中。6.一个或多个具有收录于其上的计算机可执行指令的计算机可读存储介质,所述指令在由至少一个处理器执行时使所述至少一个处理器执行以下动作从查询服务(260)接收对应用程序实例状态更新的结果的订阅请求,所述订阅请求包括过滤器;从结果队列(MO)接收一个或多个应用程序实例状态更新的一组结果074) 将所述过滤器应用到来自所述结果队列(MO)的该组结果(274); 将满足所述过滤器的一组一个或多个要求的该组一个或多个结果发布到所述查询服务Q60)以及将与被发布到所述查询服务(260)的一个或多个结果(276)相对应的一个或多个应用程序实例状态更新的一个或多个表示存储到查询存储O80)中。7.如权利要求6所述的一个或多个计算机可读存储介质,其特征在于,所述动作还包括将与该组结果相对应的应用程序实例状态更新的表示存储到实例存储中,其中实现发布到所述查询服务以及存储到所述查询存储无需锁定所述实例存储。8.如权利要求7所述的一种或多种计算机可读存储介质,其特征在于,所述动作还包括从所述查询服务接收与所述实例存储进行同步的请求; 响应于对同步的所述请求,从所述实例存储请求同步信息; 从所述实例存储接收所请求的同步信息;以及将所述同步信息的至少一部分转发给所述查询服务。9.如权利要求8所述的一种或多种计算机可读存储介质,其特征在于,所述动作还包括,使用所述同步信息的至少一部分来对查询存储的至少一部分和所述实例存储的至少一部分进行同步。10.如权利要求6所述的一种或多种计算机可读存储介质,其特征在...
【专利技术属性】
技术研发人员:N·A·艾伦,J·A·泰勒,K·帕拉玛斯万姆,D·舒克拉,
申请(专利权)人:微软公司,
类型:发明
国别省市:US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。