针对服务连接应用而预取内容的制作方法_5

文档序号:9693208阅读:来源:国知局
实施例中,后台任务的运行时间可W执行对之前预取的成功的计算并且做出实 际HTTP请求W检索开发者指定的内容。在一个实施例中,后台任务可W执行W下工作: 1. 如果被预取服务指示为计算益处得分,后台任务可W计算益处得分并且将其通信 至预取服务; 2. 加载内容URI或内容源URI; 3. 如果内容源来自URI,下载并解析; 4. 下载可W不是已被高速缓存的资源,保持追踪哪些下载是成功的和失败的; 5. 当完成了所有下载或者取消了BG任务时,向预取服务告知完成状态并且经由RPC接 口存储成功下载的URI的列表。 巧127] 计算预取益处得分 在一个实施例中,预取服务可W确定预取应用是否可W依靠之前已知的对于之前预取 的高速缓存命中和错过率。可W对于每个应用维持该信息,并且应用对此在时间窗口内被 实际启动。当由预取服务所指示时,益处得分可W如下被计算并且报告给预取服务: 1. 从注册表读取对其尝试了下载的URI的列表W及下载是否成功(参见部分7.4.3.2) 2. 上次益处得分=0; 3. 查询W如下而计算上次益处得分:对于对其尝试了下载的每个URI: a. 如果下载成功并且从高速缓存供应资源,上次益处得分:=上次益处得分+1 b. 如果下载成功并且并未从高速缓存供应资源,上次益处得分:=上次益处得分-1 C.如果下载并未成功,上次受益得分:=上次益处得分-1 4. RPC至预取服务的报告预取益处得分方法W报告所计算的上次益处得分。
[012引执行预取 如前所述,为了实际执行预取,后台任务可W首先检索开发者指定的URI的列表。如果 获得了内容源URI,则后台任务可W获取该URI,使XML生效并且解析该XMLW获得要获取的 URI的列表。在另一实施例中,云服务可W向设备发送指示了新内容可用的推送通知。运可 W提高与运行预取任务相关联的概率,包括使预取任务立即运行。
[0129] 一旦获得了内容URI的列表,后台任务可W首先检查所请求的URI是否在高速缓存 中仍然有效。可能期望运一点W避免针对成功度量破坏高速缓存命中率。如果URI在高速缓 存中不是有效的,后台任务可W获取运些UIR,并且在运么做时结果可能最终处于高速缓存 中。新引入的HTTP客户端APIs可W用于该目的。获取可W继续,直至预取列表耗尽或者后台 进程缺失资源。
[0130] 可选地,为了识别预取特征至外部站点,可W在所有请求中包括合适的报头,如果 需要的话包括对于内容源XML的请求。运可W由服务器使用W改变对于预取服务的响应。例 如,服务可W选择重定向至新XML列表,或者负载过轻的服务可W选择W使得对于失败实际 用户请求的预取请求失败。
[0131] 当做出网络请求时,后台进程可能需要处置http状态代码的集合。可W由后台服 务处置W下代码。可W忽略所有其他状态代码: 1. 200,304--资源可W被存储在高速缓存中;追踪如下载成功的URI; 2. 301,305,307一一执行对于响应的位置字段中所指示URI的请求。如果然后接收到 200或304响应,资源可W被存储在高速缓存中并且应当追踪如成功下载的URKW下的重定 向可W不导致获取在URI上追索; 3. 所有其他一一追踪如失败的URI。 巧132] 追踪预取成功率 在一个实施例中,可W追踪预取的成功率并且反馈至预取进程W动态地改良进程。为 此,可W耐久地存储上次预取的实际URI。在一个实现方式中,可W可能在W下注册表值下 设置reg值: 1.上次预取的URI -一包含尝试被预取的URI的集合W及尝试是否成功。运包括对于 任何3XX HTTP状态代码的重定向URI,W及可能由于其他原因已经失败的任何URI(例如 503,504,408)。如果做出获取抓1的尝试,其可^被放置在该列表中。 巧13引完成/中止 为了任何W下原因可W在完成之前放弃后台任务: 1. 史尘一一由应用取消后台任务。运可W出于W下原因之一而发生: a. 任务被视作空闲任务。运意味着后台任务可W仍然在运行,但是不做任何事情一一 例如,并不调用close()函数的化vaScript任务。 b. 后台任务使用MaintenanceTrigger并且系统转变至DC(电池电力)。 C.当任务在运行时卸载了注册后台任务的应用。 2. 终止一一取消后台任务,因为应用由于系统策略而将要终止。 3. 登出一一取消后台任务,因为用户已经登出系统。 4. 服务更新一一取消后台任务,因为应用被更新。
[0134] 当后台任务完成或中止时,其可W引发深红色事件,指示其是完成还是中止,并且 如果中止,深红色事件可W包括取消原因。
[0135] 调用预取服务的报告高速缓存命中率方法W向预取服务告知之前预取益处得分 W及任务不再运行的事实。可W注意的是,即使后台任务并未计算之前预取益处得分,也可 W做出该调用,使得服务的上次预取时间仍然被更新。
[0136] 可W注意的是,在后台任务中止的情况下,将在终止之前给定所期望的时间 段一一例如5秒(壁钟时间)一一在其中完成W上工作。
[0137] 后台进程可W很好利用用户的资源。运包括确保运行的后台任务不干扰活跃用户 的体验,或者后台任务不消耗过多CPU、存储器或电池资源。因此,后台任务可W经历"缺失 资源"条件,其中资源是在后台任务上由系统设置的人为限值。因为该特征正使用现有的后 台任务主机基础结构,现有的资源限值可W施加到后台预取进程。
[0138] W上描述的内容包括主题创新的示例。当然,不可能出于描述所要求保护的主题 的目的而描述部件或方法的每个可想到的组合,但是本领域技术人员可W认识到,主题创 新的许多其他组合和排列是可能的。因此,所要求保护的主题意在包括落入随附的权利要 求的精神和范围内的所有运样的改变、修改和变形。
[0139] 特别地并关于由如上所述部件、设备、电路、系统等等所执行的各种功能,除非另 外指示,否则用于描述运样的部件的术语(包括对于"装置"的引述)意在对应于执行所描述 的部件的指定功能(例如功能性等同)的任何部件,即便并未结构上等同于执行了所要求保 护的主题的本文说明的示范性特征方面中的功能的所公开结构。对此还将认识到,创新包 括系统W及具有用于执行所所要求保护的主题的各种方法的动作和/或事件的计算机可执 行指令的计算机可读介质。
[0140] 此外,尽管可能仅关于若干实现方式之一公开了主题创新的特定特征,然而在对 于任何给定的或具体的应用可能是需要和有利的时,运样的特征可W与其他实现方式的一 个或多个其他特征组合。此外,就在详细描述或权利要求中使用术语"包含"和"含有"及其 变形来说,运些术语意在W类似于术语"包括"的方式而是包括性的。
【主权项】
1. 一种用于针对应用预取数据的方法,所述应用能够运行在计算机系统中,所述计算 机系统包括控制器、存储器和操作系统,所述数据被存储在所述计算机系统远程处的内容 源处,方法包括: 将应用的集合与数据的集合相关联,所述数据能够从内容源的集合被检索; 确定预取条件的集合,所述预取条件包括组中一项,所述组包括:系统资源可用性,应 用是否可以被预启动的预测性度量,与针对预取的用户设置有关的数据,与针对给定应用 的之前预取是否成功有关的数据; 确定可以预取哪些应用;以及 如果所述条件的集合满足给定策略,执行从所述内容源预取数据。2. 根据权利要求1所述的方法,其中,关联应用的集合进一步包括: 将应用与组中一项相关联,所述组包括:来自URL的集合的数据,来自URI的集合的数 据,以及来自由所述应用对web服务做出的响应的数据。3. 根据权利要求1所述的方法,其中,关联应用的集合进一步包括: 向应用提供API,所述API能够向计算机系统提供与针对所述应用要预取的数据有关的 数据。4. 根据权利要求1所述的方法,其中,确定预取条件的集合进一步包括: 监视所述计算机系统的系统资源;以及 进一步其中所述系统资源包括组中一项,所述组包括:CPU利用,GPU利用,存储器利用,I/O利用,和电池充电状态。5. 根据权利要求1所述的方法,其中,所述确定预取条件的集合进一步包括: 确定对预启动应用的可能性的度量。6. 根据权利要求5所述的方法,其中,所述确定对预启动应用的可能性的度量进一步包 括: 预测建模以给出应用何时可以被用户激活的预测度量;以及 进一步其中所述预测建模是组中一项,所述组包括:基于应用使用的次序而建模,基于 应用使用的频率而建模,基于应用使用的日时间而建模,基于应用使用的位置而建模,使用 最常用应用预测器而建模,使用最多使用预测器而建模,使用空预测器而建模,用自适应预 测器而建模,以及用切换率预测器而建模。7. -种用于针对应用预取数据的系统,所述应用能够运行在计算机系统中,所述计算 机系统包括控制器、存储器和操作系统,所述数据被存储在所述计算机系统远程处的内容 源处,所述系统包括: API的集合,每个所述API与应用相关联并且每个所述API能够存储针对所述应用要预 取的数据; 预取发起器策略模块,所述预取发起器策略模块能够依赖于预取条件的集合而发起预 取进程; 预取进程模块,所述预取进程模块能够针对由所述预取发起器策略模块识别的应用从 远程内容源预取数据;以及 计算机存储装置,所述计算机存储装置能够存储从所述远程内容源所预取的数据,以 使得可以使所预取的数据可用于所述应用。8. 根据权利要求7所述的系统,其中,所述预取发起器策略模块进一步包括: 预测模块,其能够给出应用何时可以被用户激活的预测度量;以及 进一步其中所述预测模块是组中一项,所述组包括:基于应用使用的次序的预测模块, 基于应用使用的频率的预测模块,基于应用使用的日时间的预测模块,基于应用使用的位 置的预测模块,使用最常用应用预测器的预测模块,使用最多使用预测器的预测模块,使用 空预测器的预测模块,自适应预测模块,以及切换率预测模块。9. 根据权利要求7所述的系统,所述预测发起器策略模块进一步包括策略的集合,所述 策略包括组中一项,所述组包括:系统资源策略规则,用户预取策略规则,预启动策略规则, 以及之前预取益处规则。10. 根据权利要求7所述的系统,其中,所述系统进一步包括: 预取成功模块,所述预取成功模块能够: 度量针对当前预取的成功数据;以及 依赖于所述成功数据而改变一些策略。
【专利摘要】公开了用于在计算机系统中针对终止或挂起并可以由计算机系统预启动的应用而预取数据的系统和方法。应用可以采用在计算机系统远程处并可从第三方内容资源可得的数据。用于预取这样的远程数据的方法包括:将应用的集合与这样的数据和/或其位置相关联;确定预取条件集合,确定可以预取哪些应用,以及如果预取条件满足所期望的预取策略则预取数据。可以使用预测模块或技术来识别可以预启动的那些应用。本系统可以包括预取成功模块,其能够度量针对当前预取的成功数据并且将这样的成功数据与应用相关联以改进未来的预取。
【IPC分类】G06F9/48
【公开号】CN105453042
【申请号】CN201380077386
【发明人】M.梅里, M.伊根, J.埃尔德里奇, M.克拉尔, L.奥斯特曼, C.米勒, S.萨达, Z.布朗, A.基尚
【申请人】微软技术许可有限责任公司
【公开日】2016年3月30日
【申请日】2013年9月20日
【公告号】EP3008592A1, US20140373032, WO2014200527A1
当前第5页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1