基于托管系统支持来评估由应用提供的服务质量的制作方法

文档序号:12512715阅读:151来源:国知局
基于托管系统支持来评估由应用提供的服务质量的制作方法与工艺

需要选择用于商业或个人使用的应用(即,应用程序)的人可能发现难以识别最能满足他们的需要的应用。例如,会计事务所可能想要基于云的客户关系管理(“CRM”)应用来帮助跟踪和分析关于其客户的信息。会计事务所可能需要在世界各地的办公室一天24小时、一周7天地(24/7)使用该应用,可能需要非常快的响应时间,并且可能需要可靠的数据存储。作为另一示例,人可能想要用于智能电话的照片编辑应用,以用于编辑家庭照片并且将照片存储在远程服务器处。

当选择最能满足他们的需要的应用时,人通常回顾由应用提供方提供的文献。然而,该人可能怀疑应用提供方的声称(例如,365/24/7可用性),并且可能认为他们只是广告炒作。这样的人可以寻找其他来源来对应用进行独立评估。这样的其他独立评估包括客户评论、流行度排名、产品评论等。这些独立评估主要是主观的,并且可以主要基于提供评估的人的需要。例如,想要快速响应时间的客户可以对于具有不满足该客户期望的响应时间的应用提供否定评论,即使该应用可以另外提供优越的功能。想要优越的功能的另一个客户可以针对该相同的应用提供肯定评论,即使响应时间有点慢。作为另一示例,流行度排名(例如,100,000个客户)固有地基于使用应用的人的主观评估。即使第三方评论组织的产品评论也主要基于评论人的主观评估。

对于基于云的应用,已经提出了一些技术来跟踪和报告云基础设施的关键性能指示符(“KPI”)。这些KPI包括跟踪处理器和存储器的速度、缩放延迟(例如,根据需要添加新的资源)、存储性能(例如速度)、响应时间等。即使这些KPI提供对云基础设施的准确的总体评估,但是它们只是平均或理想的评估,并且可能不代表由云基础设施托管的任何单独的应用。



技术实现要素:

提供了一种用于评估由应用提供的服务的质量的方法和系统。在一些实施例中,评估系统生成数据存储得分以指示为应用提供的数据存储支持。评估系统还可以生成计算得分以指示对应用的计算支持。评估系统还可以生成安全得分以指示针对应用的安全支持。然后,评估系统通过组合数据存储得分、计算得分和安全得分来生成服务得分。评估系统然后提供服务得分作为由应用所提供的服务的质量的指示或认证。应用可以由托管系统托管或者与由提供数据存储支持、计算支持和安全支持的托管系统托管的软件系统接口。评估系统还可以生成性能得分以指示应用的性能并且将该性能得分作为因素计入服务得分中。

提供本发明内容以便以简化的形式介绍将在下文详细描述中进一步描述的一些概念。本发明内容不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。

附图说明

图1是图示了云基础设施的框图。

图2图示了在一些实施例中的用于提供应用的服务质量得分的显示页面。

图3图示了在一些实施例中的用于辅助应用提供方分析不同水平的保护对服务质量得分的影响的显示页面。

图4是图示了在一些实施例中的评估系统的部件的框图。

图5是图示了在一些实施例中的评估系统的评估服务质量部件的处理的流程图。

图6是图示了在一些实施例中的评估系统的生成数据存储得分部件的处理的流程图。

图7是图示了在一些实施例中的评估系统的生成计算得分部件的处理的流程图。

图8是图示了在一些实施例中的评估系统的生成安全得分部件的处理的流程图。

图9是图示了在一些实施例中的评估系统的代码分析部件的处理的流程图。

图10是图示了在一些实施例中的评估系统的执行分析部件的处理的流程图。

具体实施方式

提供了一种用于评估由应用提供的服务的质量的方法和系统,该应用可以由托管系统托管或者与由托管系统托管的软件系统接合。在一些实施例中,评估系统生成服务得分作为由应用提供的服务的质量的指示或证明。可以例如由应用商店来提供服务得分,以帮助用户选择要下载到他们的设备的应用或者选择使用哪个托管的应用。评估系统可以基于由托管系统向应用提供的支持来确定应用的服务质量。例如,托管系统可以提供数据的自动复制和具有图形处理单元(“GPU”)的计算机。每个应用提供方可以为其应用选择不同的组合和不同水平的支持。一个应用提供方可以为所存储的数据选择非常安全的加密,并且可以不选择数据中心的高水平的地理分布。相比之下,另一应用提供方可能不选择所存储的数据的任何加密,并且可以选择数据中心的高水平的地理分布。评估系统生成由托管支持向应用提供的各种类型的支持的得分,并且可以将这些支持得分组合成应用的总体服务得分。因为支持得分是基于由托管系统提供的支持生成的,所以支持得分倾向于比诸如客户评论的其他评估更客观。

托管系统可以是在地理上分散的位置(诸如美国、巴西、德国和日本)具有多个数据中心的云基础设施。每个数据中心可以具有数千个计算机(即,数据中心服务器)和数据存储单元。云基础设施还可以提供甚至在地理上更加分散的位置(诸如在加拿大、墨西哥、俄罗斯、肯尼亚、中国、印度等等)具有前端服务器(例如,边缘服务器)的前端中心。这些前端中心连接到数据中心,并且允许用户经由在地理上靠近用户的前端服务器连接到数据中心。应用的一些功能可以由前端服务器(例如,服务本地高速缓存网页)提供,但是其主要功能(例如,数据存储)可以由数据中心服务器提供。

在一些实施例中,评估系统生成数据存储支持、计算支持、安全支持等的支持得分。托管系统可以提供数据存储支持,诸如提供不同水平的数据存储冗余或复制、不同水平的数据恢复等。对于数据存储冗余的不同水平的支持可以规定存储多少数据副本、存储数据的位置(例如,本地存储器或地理上的远程存储器)、数据是同步地存储还是异步地存储等。对于数据恢复的不同水平的支持可以基于各种因素,包括恢复点目标(“RPO”)和恢复时间目标(“RTO”)。恢复点目标指示在存储数据与该数据的异步复制之间的滞后时间。例如,恢复点目标可以指示数据将在30分钟内被异步复制。在这种情况下,如果主存储装置发生故障,则基于复制存储装置的恢复意味着将不会有超过30分钟的数据被丢失。恢复时间目标指示使用经复制的数据恢复应用的功能所需的最大时间量。例如,如果在一个数据中心被托管的应用失败,则两分钟的恢复时间目标可能意味着应用将在数据中心故障的两分钟内在备份数据中心中启动(up)并且运行。

托管系统还可以提供计算支持,诸如不同水平的数据中心弹性和不同水平的前端弹性。不同水平的数据中心弹性可以基于各种因素,包括地理分布、故障转移、自动缩放等。地理分布因素指示托管应用的数据中心的地理分布。例如,在美国的两个数据中心被托管的应用将不是像在美国的数据中心和欧洲的数据中心被托管的应用那样在地理上分布。故障转移因素指示绕过故障数据中心需要多长时间。例如,如果数据中心在美国出现故障,则故障转移因素将基于域名服务器(“DNS”)被配置为将请求路由到欧洲的数据中心所需的时间。自动缩放因素指示是否会根据需求自动将另外的数据中心服务器分配给应用。不同水平的前端弹性可以基于各种因素,包括地理分布、故障转移、自动缩放等。地理分布因素指示用于应用的前端中心的地理分布。例如,具有仅位于美国的前端中心的应用不会像分布在世界各地的相同数量的前端中心那样在地理上分布。故障转移因素指示绕过故障前端中心需要多长时间。自动缩放因素指示是否会根据需求自动将另外的前端服务器分配给应用。托管系统可以提供不同水平的其他计算支持,诸如不同的处理器速度、不同的存储量和存储速度、不同类型的辅助处理器(“GPU”)等。

托管系统还可以提供安全支持,诸如不同水平的认证、不同水平的恶意软件保护、不同水平的加密等。不同水平的认证可以包括没有认证、单因素认证(例如密码)和多因素认证(例如,密码和令牌码)。不同水平的恶意软件保护可以基于各种因素,包括应用所使用的操作系统的类型和版本、杀毒软件的类型等。例如,托管系统可以向应用提供方提供基础设施即服务(“IAAS”)选项并且提供平台即服务(“PAAS”)。使用IAAS选项,应用提供方为应用提供操作系统。相比之下,使用PAAS选项,托管服务为应用提供操作系统。PAAS选项可以对应于更高水平的支持,因为托管服务可以负责保持恶意软件保护是最新的,保持操作系统和其他软件系统是最新的,等等。数据的不同水平的加密可以基于各种因素,包括加密算法(例如,高级加密标准)、加密密钥的长度(例如,128、192或256位)、加密块的长度(例如128或256位)等。例如,使用256位密钥的加密表示比使用128位密钥的加密更高水平的支持。加密水平的其他因素可以基于通信是否被加密以及存储在存储单元上的数据是否被加密。

评估系统可以针对不同类型的支持使用各种技术来生成支持得分。例如,评估系统可以生成范围在0到100之间的得分,或者可以生成类似于学业成绩的得分(例如,A、B-、C+和F)。为了生成支持类型的得分,评估系统可以生成该类型的支持水平的构成得分,然后将这些构成得分组合成针对该类型支持的支持得分。例如,评估系统可以维护不同水平的支持到其对应的构成得分的映射。例如,对于不同水平的加密,可以将未加密的水平映射到构成得分0,可以将使用128位密钥的高级加密标准(“AES”)加密的水平映射到构成得分90,并且可以将具有256位密钥的AES加密的水平映射到构成得分100。评估系统可以使用加权平均将构成得分组合成支持得分。例如,评估系统可以相对于恶意软件保护和加密水平将认证水平加权两倍。如果用于认证、恶意软件保护和加密的构成得分是50、40和80,则评估系统可以生成支持得分37.5(例如,(2x50+40+10)/4),而不是没有加权的33.3。评估系统可以类似地生成应用的服务得分作为该应用的支持得分的加权平均。尽管构成得分和权重的设置可以被认为是主观的,但是在具有相同支持水平的任何应用将具有相同的总体得分的意义上,评估系统客观地生成应用的总体得分。

在一些实施例中,应用的服务质量的评估可以由托管系统的提供方或第三方认证服务提供。当第三方认证服务提供评估时,认证服务可以从应用提供方或托管系统收集针对应用的支持水平。如果支持水平由应用提供方提供,则认证服务可以验证托管系统的准确性。在一些实施例中,评估系统还可以将通过监测应用的执行、分析由托管系统收集的关键性能指示符、分析应用代码等而被确定的支持水平作为因素计入服务质量得分中。关键性能指示符可以包括崩溃次数、宕机时间量、响应时间、对拒绝服务攻击的弹性、尝试攻击次数等。评估系统可以生成性能得分以指示应用执行得多好。服务质量得分还可以将应用是否由多个独立的托管系统托管作为因素计入。如果是这样,则服务质量可能更高,因为应用对于单个托管系统的完全故障将更加具有弹性。

图1是图示了云基础设施的框图。云基础设施100包括数据中心110和120以及前端中心130-180。数据中心110和120可以分别位于美国和欧洲。前端中心130-180可以位于全世界的不同区域。数据中心110包括服务器111和存储单元112,并且数据中心120包括服务器121和存储单元122。前端中心130-180包括服务器131-181。前端中心可以经由因特网连接到数据中心,并且数据中心可以使用专用高速通信信道(例如,光纤)彼此连接。云基础设施还可以提供用于将通信从前端中心路由到数据中心的域名服务器(未示出)。

图2图示了在一些实施例中的用于提供应用的服务质量得分的显示页面。显示页面200包括用于显示名为“AppX”的应用的认证信息的认证窗口210。认证窗口包括服务质量得分211、数据存储得分212、计算得分213和安全得分214。认证窗口还包括用于输入其认证信息将被显示的不同应用的名称的数据输入字段215。评估系统可以向普通公众提供该显示页面以帮助选择应用。

图3图示了在一些实施例中的用于辅助应用提供方分析不同水平的保护对服务质量得分的影响的显示页面。显示页面300包括用于分析对AppX的不同水平的支持的影响的分析窗口310。分析窗口包括当前认证区域311、当前支持区域312、用于不同支持水平的数据输入字段313、和新认证区域314。当前认证区域包括当前服务质量得分和针对应用的支持得分。当前支持区域包括当前选择的类型的支持(即,数据存储支持)的当前水平的构成支持。当前支持区域允许用户查看在生成支持得分时考虑在内的构成支持的水平。数据输入字段可以是用于选择新的水平的构成支持的下拉对话框。在该示例中,用户已经选择数据存储冗余“全局”和恢复点目标“一分钟”。新认证区域指示如果托管服务向应用提供新的水平的构成支持,则服务质量得分和数据存储得分将是多少。窗口还可以显示当前和新的水平的构成支持的构成得分。应用提供方可以使用分析窗口来选择最能满足应用提供方的目标的水平的构成支持。分析窗口还可以包括指示不同水平的构成支持的影响的财务信息。

图4是图示了在一些实施例中的评估系统的部件的框图。评估系统400可以包括或访问应用储存库410,应用储存库410针对每个应用指示对于每种类型的支持的构成支持的水平。例如,应用储存库可以指示AppX当前对于数据存储冗余、5分钟的恢复点目标以及1分钟的恢复时间目标具有本地水平支持。评估系统400还可以包括数据存储映射储存库421、计算映射储存库422和安全映射储存库423。这些储存库中的每个可以将各个水平的构成支持映射到它们的相应的构成得分。在一些实施例中,不同的构成支持可以被映射到用于计算相应构成得分的代码模块。评估系统400还可以包括服务质量客户用户界面部件431和服务质量应用提供方用户界面部件432。客户用户界面部件提供认证窗口210,并且应用提供方用户界面部件提供分析窗口310。评估系统400还包括评估服务质量部件441、生成数据存储得分部件442、生成计算得分部件443和生成安全得分部件444。评估服务质量部件调用其他部件以生成服务质量得分。评估系统还包括包含针对每个应用的当前得分的服务质量得分储存库451。评估系统还可以包括或访问关键性能指示符储存库461。托管系统还可以跟踪关键性能指示符,诸如响应时间。在一些实施例中,评估系统可以将这些关键性能指示符作为因素计入服务质量得分中。评估系统还可以包括代码分析部件471和代码分析签名储存库472。代码分析部件可以用于分析应用的代码,以确定由应用本身所提供的支持水平。代码分析签名储存库可以包含要用于扫描应用的代码以确定支持水平的签名。评估系统还可以包括配置执行监测部件481、执行监测储存库482和执行分析部件483。配置执行监测部件可以用于配置操作系统以收集与服务质量相关的执行信息,诸如记录操作系统调用、记录数据是否被冗余存储等。执行信息可以被存储在执行监测储存库中。

其上可以实现评估系统的计算设备和系统可以包括中央处理单元、输入设备、输出设备(例如,显示设备和扬声器)、存储设备(例如,存储器和磁盘驱动器)、网络接口、图形处理单元、加速度计、蜂窝无线电链路接口、全球定位系统设备等。输入设备可以包括键盘、指示设备、触摸屏、手势识别设备(例如,用于空中手势)、头部和眼睛跟踪设备、用于语音识别的麦克风等。计算设备可以包括台式计算机、膝上型计算机、平板计算机、电子阅读器、个人数字助理、智能电话、游戏设备、服务器和计算机系统,诸如大规模并行系统。计算设备可以访问计算机可读介质,计算机可读介质包括计算机可读存储介质和数据传输介质。计算机可读存储介质是不包括暂态传播信号的有形存储装置。计算机可读存储介质的示例包括存储器,诸如主存储器、高速缓存存储器和辅助存储器(例如,DVD),并且包括其他存储装置。计算机可读存储介质可以记录在实现注释系统的计算机可执行指令或逻辑上,或者可以用该计算机可执行指令或逻辑来编码。数据传输介质用于经由暂态传播信号或载波(例如,电磁)经由有线或无线连接来传输数据。

评估系统可以在由一个或多个计算机、处理器或其他设备执行的计算机可执行指令(诸如程序模块和部件)的一般上下文中描述。通常,程序模块或部件包括执行特定任务或实现特定数据类型的例行程序、程序、对象、数据结构等。通常,在各种实施例中,可以根据需要组合或分布程序模块的功能。评估系统的各方面可以使用例如专用集成电路(“ASIC”)来在硬件中实现。

图5是图示了在一些实施例中的评估系统的评估服务质量部件的处理的流程图。调用部件500以计算针对应用的服务质量得分。在框501,部件调用生成数据存储得分部件以生成应用的数据存储得分。在框502,部件调用生成计算得分部件以生成应用的计算得分。在框503,部件调用生成安全得分以生成应用的安全得分。在框504,部件通过组合数据存储得分、计算得分和安全得分来计算服务质量得分。在框505,部件将服务质量得分存储在质量服务得分储存库中,并且然后完成。

图6是图示了在一些实施例中的评估系统的生成数据存储得分部件的处理的流程图。部件600被调用并且被传递其数据存储得分要被生成的应用的指示。在框601,部件从应用储存库检索由托管系统向应用提供的数据存储支持的指示。在框602,部件确定向应用提供的数据存储冗余支持的水平。在框603,部件确定应用的恢复点目标。在框604,部件确定应用的恢复时间目标。在块605,部件通过从数据存储映射储存库检索相关联的构成得分并且将构成得分组合成支持得分来计算数据存储得分,并且然后返回。

图7是图示了在一些实施例中的评估系统的生成计算得分部件的处理的流程图。部件700被调用并且被传递其计算得分要被生成的应用的指示。在框701,部件从应用储存库检索由托管服务向应用提供的计算支持的指示。在框702,部件确定针对数据中心的地理分布支持。在框703,部件确定针对数据中心的故障转移支持。在框704,部件确定针对数据中心的自动缩放支持。在框705中,部件确定针对前端中心的地理分布支持。在框706,部件确定针对前端中心的故障转移支持。在框707,部件确定针对前端中心的自动缩放支持。在框708,部件通过从计算映射储存库检索相关联的构成得分并且将构成得分组合成支持得分来计算计算得分,并且然后返回。然后部件返回。

图8是图示了在一些实施例中的评估系统的生成安全得分部件的处理的流程图。部件800被调用并且被传递要生成其安全得分的应用的指示。在框801,部件检索向应用提供的安全支持的指示。在框802,部件确定向应用提供的认证支持的水平。在框803,部件确定向应用提供的恶意软件支持的水平。在框804,部件确定向应用提供的数据加密支持的水平。在框805,部件通过从安全映射储存库检索相关联的构成得分并且将构成得分组合成支持得分来计算安全得分,并且然后返回。然后部件返回。

图9是图示了一些实施例中的评估系统的代码分析部件的处理的流程图。部件900被传递应用的指示,并且对应用执行代码分析以确定由应用提供的支持的水平。在框901-907,部件循环选择每种类型的支持。在框901,部件选择下一类型的支持。在框902,如果已经选择了所有类型的支持,则部件完成,否则部件在框903继续。在框903-907,部件循环选择用于所选择的支持类型的每个签名并且扫描代码以确定是否可以找到该签名。在框903,部件选择用于所选择的支持类型的下一签名。在判定框904,如果所有签名已经被选择,则部件循环到框901,否则部件在框905继续。在框905,部件扫描应用的代码以确定其是否包含所选择的签名。在一些实施例中,签名可以类似于用于扫描寻找病毒或其他恶意软件的代码的签名。例如,签名可以被定义为对应于用于调用(invoking)操作系统的调用(call)以执行特定水平的加密的指令序列。如果应用的代码包含该签名,则应用支持该水平的加密。在其他实施例中,签名可以对应于对应用的代码执行复杂分析以确定代码是否包含某些支持的可执行代码。在判定框906,如果找到由签名定义的水平的支持,则部件在框907继续,否则部件循环到框903以选择下一签名。在框907,部件更新应用储存库以指示已经为应用找到基于该签名的支持。该部件然后循环到框903以选择下一签名。

图10是图示了在一些实施例中的评估系统的执行分析部件的处理的流程图。在监测应用的执行之后调用部件1000,并且监测的结果已经被存储在执行监测储存库中。在框1001-1006,部件循环选择每种类型的支持并且基于执行统计更新该水平的支持。在框1001,部件选择下一类型的支持。在判定框1002,如果所有资源已经被选择,则部件完成,否则部件在框1003继续。在框1003-1006,部件循环以确定对所选择的类型的支持的每个执行因素的支持水平。在框1003,部件选择下一执行因素。在判定框1004,如果已经选择了所有执行因素,则部件循环到框1001以选择下一类型的支持,否则部件在框1005继续。在框1005,部件确定针对所选择的执行因素的支持水平。在框1006,部件更新应用储存库以指示针对所选择的执行因素的支持水平,然后循环到框1003以选择下一执行因素。

某些实施例的方面

在一些实施例中,评估系统提供由计算设备执行的用于评估由托管系统托管的应用所提供的服务质量的方法。该方法包括生成指示由托管系统向应用提供的数据存储支持的数据存储得分;生成指示由托管系统向应用提供的计算支持的计算得分;生成指示由托管系统向应用提供的安全支持的安全得分;基于数据存储得分、计算得分和安全得分来生成服务的服务得分;以及提供服务得分作为由托管系统托管的应用所提供的服务的质量的指示。数据存储得分可以基于由托管系统提供的对于数据存储冗余和数据恢复的支持水平,并且对于数据恢复的支持水平可以基于各种因素,包括恢复点目标和恢复时间目标。计算得分可以基于由托管系统提供的对于数据中心弹性和前端中心弹性的支持水平。对于数据中心弹性的支持水平可以基于包括数据中心的地理分布、故障转移和自动缩放的因素。对于前端中心弹性的支持水平可以基于包括地理分布、故障转移和自动缩放的因素。安全得分可以基于由托管系统提供的对于认证和恶意软件保护的支持水平,并且可以基于由托管系统提供的对于加密的支持水平。在一些实施例中,服务质量得分可以是数据存储得分、计算得分和安全得分的加权平均。在一些实施例中,托管系统是云基础设施,其中基于由云基础设施向应用提供的支持水平自动生成得分。在一些实施例中,可以基于分析应用的代码以评估支持水平来生成得分中的一个或多个。此外,可以基于监测应用的执行以评估支持水平来生成得分中的一个或多个。

在一些实施例中,提供了一种用于评估由云基础设施托管的应用所提供的服务质量的计算机系统。云基础设施可以向应用提供数据存储支持和计算支持,并且数据存储支持和计算支持中的至少一些是由云基础设施向应用提供的可选支持。计算机系统可以包括基于由云基础设施向应用提供的数据存储支持来生成数据存储得分的部件;基于由云基础设施向应用提供的计算支持来生成计算得分的部件;以及提供所生成的得分作为由云基础设施托管的应用提供的服务的质量的指示的部件。计算机系统还可以包括从除了云基础设施的提供方之外的另一方接收由云基础设施向应用提供的数据存储支持和计算支持的指示并且向云基础设施的提供方验证数据存储支持和计算支持的部件。计算机系统还可以包括基于向应用提供支持的多个云基础设施来生成多云基础设施得分的部件。根据权利要求13的计算机系统还可以包括监测应用的执行并且生成指示应用的性能的性能得分的部件。

在一些实施例中,计算机可读存储介质存储用于控制计算设备提供对由应用提供的服务的质量的评估的计算机可执行指令。计算机可执行指令可以包括指令用于:标识由托管应用的托管系统向应用提供的支持,其中托管系统向应用提供不同支持水平;基于所标识的由托管系统向应用提供的支持水平来生成一个或多个得分;以及提供所生成的一个或多个得分作为由应用提供的服务的质量的指示。在一些实施例中,标识支持可以包括从除了托管系统的提供方之外的另一方接收支持水平的指示,并且向托管系统的提供方验证所接收的支持水平。在一些实施例中,向应用提供的支持可以包括数据存储支持、计算支持和安全支持中的一项或多项。计算机可读存储介质可以包括用于评估应用的客户端侧部件的质量并且在生成一个或多个得分时将客户端侧部件的所评估的质量作为因素计入的指令。

尽管已经用对结构特征和/或动作专用的语言描述了主题,但是应当理解,所附权利要求中定义的主题不一定限于上述具体特征或动作。相反,上述具体特征和动作被公开作为实现权利要求的示例形式。因此,除了所附权利要求之外,本发明不受限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1