基于服务质量的缓存设备服务能力遍历测试系统及方法与流程

文档序号:11878106阅读:303来源:国知局
基于服务质量的缓存设备服务能力遍历测试系统及方法与流程

本发明涉及互联网技术领域,特别涉及一种基于服务质量的缓存设备服务能力遍历测试系统及方法。



背景技术:

缓存做为一种有效的互联网内容加速系统大量应用于各大电信运营商,有效提升了运营商内容资源的访问速度,降低了结算成本,但随着缓存系统的大规模部署,以及访问用户量的增加,缓存业务节点持续稳定的服务能力就尤为重要。

目前对缓存服务质量的监测是由缓存网管以及第三方工具抓包分析的方式实现,该监控方式存在以下缺陷和不足:

①缓存网管仍然沿用传统的监控方式通过对缓存服务器的CPU、内存、连接数等关键性能指标(KPI)进行监控的方式评估其服务质量,但该KPI指标无法准确衡量其服务质量,特别是在现如今的多出口、多路由、多优先级等复杂的网络环境下,系统性能指标并不是影响业务质量的全部因素,甚至于系统性能指标正常但其承载业务故障的事件也时有发生,缓存网管已无法满足对缓存服务质量的监测要求。

②上述监控方式无法涵盖用户实际应用缓存业务的质量。

③第三方工具抓包的方式由于受到DNS解析(调度)的影响,测试效率低下并且无法保证能够覆盖所有的缓存业务节点。

④第三方工具抓包的方式无法进行自动化测试,无法对故障节点和服务质量下降节点进行告警。

⑤第三方工具抓包方式无法测试缓存回源的业务质量,而这部分资源通常是造成缓存业务质差的重要因素。

如中国专利CN 103516731 A的发明专利,该发明提供一种缓存服务器的服务方法、缓存服务器及系统,然而,该发明无法准确衡量缓存服务器的服务质量。



技术实现要素:

本发明的目的旨在至少解决所述技术缺陷之一。

为此,本发明的目的在于提出一种基于服务质量的缓存设备服务能力遍历测试系统及方法,通过遍历的方式对缓存业务节点服务器集群中的所有缓存业务节点进行全覆盖监测,提高缓存服务质量的测试效率。

为了实现上述目的,本发明提供一种基于服务质量的缓存设备服务能力遍历测试系统,包括:源站、缓存类型判断模块、缓存业务节点服务器集群、监测模块、质量评估模块、告警监控模块;

所述缓存类型判断模块与所述缓存业务节点服务器集群、所述监测模块、所述质量评估模块、所述告警监控模块之间相互独立且互相依存;

所述缓存类型判断模块分别与缓存业务节点服务器集群、监测模块连接,所述缓存业务节点服务器集群分别与源站、监测模块连接,所述监测模块通过调用监测单元与质量评估模块连接,所述质量评估模块连接告警监控模块。

进一步,所述缓存类型判断模块包括大文件缓存判断单元和小文件缓存判断单元,所述大文件缓存判断单元和所述小文件缓存判断单元都分别与监测模块和缓存业务节点服务器集群连接。

进一步,所述监测模块包括HTTP监测单元、HTTP代理监测单元和指定HOST监测单元,所述HTTP监测单元、所述HTTP代理监测单元和所述指定HOST监测单元都分别与所述缓存类型判断模块和所述缓存业务节点服务器集群连接。

进一步,所述质量评估模块包括小文件缓存业务节点质量评估单元和大文件缓存业务节点质量评估单元,所述小文件缓存业务节点质量评估单元和所述大文件缓存业务节点质量评估单元都分别与所述监测模块和所述告警监控模块连接。

进一步,所述告警监控模块包括源站资源告警单元、缓存业务节点告警单元、缓存网络/策略告警单元,所述源站资源告警单元、所述缓存业务节点告警单元、所述缓存网络/策略告警单元都分别连接所述小文件缓存业务节点质量评估单元和所述大文件缓存业务节点质量评估单元。

进一步,所述缓存业务节点服务器集群内部设有多个缓存业务节点,所述监测模块通过巡检探针遍历连接所述缓存业务节点服务器集群内部的多个缓存业务节点。

进一步,所述缓存类型判断模块输出缓存列表,且缓存列表与质量评估模块连接。

一种基于服务质量的缓存设备服务能力遍历测试方法,包括如下步骤:

步骤S1,通过缓存类型判断模块对缓存业务节点服务器集群中的缓存业务节点类型进行判断;

步骤S2,根据缓存类型判断模块输出的缓存类型,监测模块调用监测单元对缓存业务节点服务器集群进行周期性遍历测试;

步骤S3,在进行周期性遍历测试时,缓存业务节点服务器集群对监测模块进行直接响应、回源响应、重定向至源站响应、拒绝响应或无响应;

步骤S4,根据响应状态,监测模块将监测数据输出至质量评估模块,质量评估模块分别对缓存业务节点服务器集群中的缓存业务节点进行质量评估;

评估各指标得分计算公式如下:

连接时间指标得分P1=Emin+(X1max-K1)*(Emax-Emin)/(X1max-X1min);

首字节时间指标得分P2=Emin+(X2max-K2)*(Emax-Emin)/(X2max-X2min);

吞吐率指标得分P3=Emin+(K3-X3min)*(Emax-Emin)/(X3max-X3min);

服务质量D=(P1*20%+P2*40%+P3*40%)*访问成功率;

其中,K1表示连接时间实际测试指标,K2表示首字节时间实际测试指标,K3表示吞吐率实际测试指标,X1表示K1对应的区间值,X2表示K2对应的区间值,X3表示K3对应的区间值,E表示区间分数;

步骤S5,根据质量评估模块的评估数据,告警监控模块对缓存业务节点服务器集群中的缓存业务节点做出相应的告警。

进一步的,在步骤S2中,监测模块对缓存业务节点服务器集群的监测方法如下:

当在步骤S1中判断缓存业务节点类型为大文件缓存业务节点时,则采用HTTP监测单元进行巡检测试;

当在步骤S1中判断缓存业务节点类型为小文件缓存业务节点时,则采用HTTP代理监测单元进行巡检测试,并且当HTTP代理监测单元测试失败时调用指定HOST监测单元进行巡检测试。

进一步的,在步骤S5中,告警监控模块通过设置阀值的方式对缓存业务节点进行告警,通过各质量指标匹配告警单元;

当缓存回源失败,调用监测单元请求被重定向至源站的访问成功,则告警监控模块匹配为缓存网络/策略告警单元;

当调用监测单元请求被重定向至源站的访问失败,则告警监控模块匹配为源站资源告警单元;

当调用监测单元无法判断资源是否存在于缓存服务器,但请求被拒绝或访问失败,则告警监控模块匹配为缓存业务节点告警单元。

本发明的模块化、单元化的设计结构便于后期系统功能优化和扩展;本发明通过遍历的方式达到对缓存业务节点服务器集群中的所有缓存业务节点的全覆盖监测,提高缓存服务质量的测试效率;本发明通过告警监控模块最快在单个遍历测试周期内即可对缓存故障节点和质量下降节点进行告警;本发明覆盖了网络及缓存回源的过程,涵盖了包括缓存自身以及其它因素造成的缓存业务质量问题。

本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:

图1为本发明的结构图;

图2为本发明的巡检探针遍历连接缓存业务节点的示意图;

图3为本发明的整体流程图;

图4为本发明的工作流程图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。

本发明提供一种基于服务质量的缓存设备服务能力遍历测试系统,参考附图1,包括:源站3、缓存类型判断模块1、缓存业务节点服务器集群2、监测模块4、质量评估模块6、告警监控模块7;

缓存类型判断模块1与缓存业务节点服务器集群2、监测模块4、质量评估模块6、告警监控模块7之间相互独立且互相依存;

缓存类型判断模块1分别与缓存业务节点服务器集群2、监测模块4连接,缓存业务节点服务器集群2分别与源站3、监测模块4连接,监测模块4通过调用监测单元5与质量评估模块6连接,质量评估模块6连接告警监控模块7。

具体地,缓存类型判断模块1包括大文件缓存判断单元101和小文件缓存判断单元102,大文件缓存判断单元101和小文件缓存判断单元102都分别与监测模块4和缓存业务节点服务器集群2连接。

缓存业务节点服务器集群2内部设有多个缓存业务节点,监测模块4通过巡检探针遍历连接缓存业务节点服务器集群2内部的多个缓存业务节点。如图2所示。

缓存类型判断模块1输出缓存列表,且缓存列表与质量评估模块6连接。

其次,监测模块4包括HTTP监测单元401、HTTP代理监测单元402和指定HOST监测单元403,HTTP监测单元401、HTTP代理监测单元402和指定HOST监测单元403都分别与缓存类型判断模块1和缓存业务节点服务器集群2连接。

再次,质量评估模块6包括小文件缓存业务节点质量评估单602元和大文件缓存业务节点质量评估单元601,小文件缓存业务节点质量评估单元602和大文件缓存业务节点质量评估单元601都分别与监测模块4和告警监控模块7连接。

此外,告警监控模块7包括源站资源告警单元701、缓存业务节点告警单元702、缓存网络/策略告警单元703,源站资源告警单元701、缓存业务节点告警单元702、缓存网络/策略告警单元703都分别连接小文件缓存业务节点质量评估单元602和大文件缓存业务节点质量评估单元601。

工作原理:缓存类型判断模块通过大文件缓存判断单元和小文件缓存判断单元对缓存业务节点服务器集群中的缓存业务节点类型进行判断,缓存类型判断模块判断缓存类型后监测模块输出调用监测单元,通过巡检探针遍历连接缓存业务节点服务器集群内部的多个缓存业务节点,据此,对于大文件缓存业务节点调用HTTP监测单元进行巡检测试,小文件缓存业务节点调用HTTP代理监测单元或指定HOST监测单元进行巡检测试,并将监测数据传递至质量评估模块,质量评估模块通过大文件缓存业务节点质量评估单元或小文件缓存业务节点质量评估单元进行质量评估,小文件缓存各业务节点输出测试时间、测试目标(缓存业务节点IP)、连接时间、连接成功率、首字节时间、下载速率、访问成功率、返回码指标,大文件缓存业务节点输出测试时间、测试目标(缓存业务节点IP)、连接时间、连接成功率、首字节时间、下载速率、访问成功率、返回码指标,并计算出各缓存业务节点服务质量分数(总分100分),告警监控模块通过设立的阀值对质量评估模块计算出的服务质量分数进行告警,通过各质量指标匹配告警单元。

本发明还提供一种基于服务质量的缓存设备服务能力遍历测试方法,如图3和4所示,包括如下步骤:

步骤S1,通过缓存类型判断模块对缓存业务节点服务器集群中的缓存业务节点类型进行判断。

其中,缓存类型判断模块包括的大文件缓存判断单元和小文件缓存判断单元是根据已知类型的缓存服务器IP地址进行判断的。

步骤S2,根据缓存类型判断模块输出的缓存类型,监测模块调用监测单元对缓存业务节点服务器集群进行周期性遍历测试。

监测模块对缓存业务节点服务器集群的监测方法如下:

当在步骤S1中判断缓存业务节点类型为大文件缓存业务节点时,则采用HTTP监测单元进行巡检测试;

当在步骤S1中判断缓存业务节点类型为小文件缓存业务节点时,则采用HTTP代理监测单元进行巡检测试,并且当HTTP代理监测单元测试失败时调用指定HOST监测单元进行巡检测试。

步骤S3,在进行周期性遍历测试时,缓存业务节点服务器集群对监测模块进行直接响应、回源响应、重定向至源站响应、拒绝响应或无响应。

其中,监测模块对缓存资源的访问有以下几种情况:

1)访问资源已经存在于缓存业务节点

对于已存在于缓存业务节点内的请求资源,被测缓存业务节点直接响应(返回码200),在此过程中调用监测单元记录各缓存业务节点的访问数据。

2)访问资源未存在于缓存业务节点

对于当前未存在于缓存业务节点的请求资源,被测缓存业务节点向源站回源该资源后响应调用监测单元请求,调用监测单元则记录其请求到回源响应的访问数据,对于回源失败,缓存业务节点返回302重定向请求至源站的访问,若至源站访问成功,调用监测模块记录缓存业务节点302重定向数据并且记录源站访问数据(源站访问成功的数据),若访问源站资源失败,调用监测模块记录缓存业务节点302重定向数据并且记录源站访问数据(源站访问失败的数据)。

3)访问失败

无法判断请求资源是否存在于缓存业务节点,但调用监测单元请求被拒绝或访问失败,则调用监测模块记录被测缓存业务节点故障数据。

步骤S4,根据响应状态,监测模块将监测数据输出至质量评估模块,质量评估模块分别对缓存业务节点服务器集群中的缓存业务节点进行质量评估;

评估各指标得分计算公式如下:

连接时间指标得分P1=Emin+(X1max-K1)*(Emax-Emin)/(X1max-X1min);

首字节时间指标得分P2=Emin+(X2max-K2)*(Emax-Emin)/(X2max-X2min);

吞吐率指标得分P3=Emin+(K3-X3min)*(Emax-Emin)/(X3max-X3min);

服务质量D=(P1*20%+P2*40%+P3*40%)*访问成功率;

其中,K1表示连接时间实际测试指标,K2表示首字节时间实际测试指标,K3表示吞吐率实际测试指标,X1表示K1对应的区间值,X2表示K2对应的区间值,X3表示K3对应的区间值,E表示区间分数。

下面对缓存业务节点中的大文件缓存业务节点和小文件缓存业务节点的各指标得分进行具体描述:

表一大文件缓存业务节点质量评估表

表二小文件缓存业务节点质量评估表

由表一和表二可知,大文件缓存业务节点和小文件缓存业务节点在评估各指标得分计算公式中的X2、X3的取值范围不同,即首字节时间实际测试指标、吞吐率实际测试指标的取值的区间范围不同。

步骤S5,根据质量评估模块的评估数据,告警监控模块通过设置阀值的方式对缓存业务节点进行告警,通过各质量指标匹配告警单元。

当缓存回源失败,调用监测单元请求被重定向至源站的访问成功,则告警监控模块匹配为缓存网络/策略告警单元;

当调用监测单元请求被重定向至源站的访问失败,则告警监控模块匹配为源站资源告警单元;

当调用监测单元无法判断资源是否存在于缓存服务器,但请求被拒绝或访问失败,则告警监控模块匹配为缓存业务节点告警单元。

下面举个例子来进行描述:

例如:某公司需对其建设的大文件和小文件缓存系统的服务质量进行监测,其中大文件缓存业务节点50台,小文件缓存业务节点30台,缓存业务节点类型、缓存黑白名单、各缓存业务节点IP以及服务端口号已知,据此,本发明提供的一种基于服务质量的缓存设备服务能力遍历测试系统及方法可建立如下遍历测试:大文件缓存使用已缓存的10M大文件(如360SMail_1.0.15.603_XiaZaiBa.zip)进行测试,小文件缓存使用白名单域名URL http://n.sinaimg.cn/ent/transform/20160624/4P34-fxtmweh2461428.jpg进行测试。

然后向系统输入50个需要监测的大文件缓存业务节点和30个需要监测的小文件缓存业务节点IP及端口号,使系统完成大文件缓存,curl-L http://111.13.109.41/360SMail_1.0.15.603_XiaZaiBa.zip(111.13.109.41为缓存业务节点之一),小文件缓存curl-x 111.13.110.75:80http://n.sinaimg.cn/ent/transform/20160624/4P34-fxtmweh2461428.jpg,或curl-H“HOST:n.sinaimg.cn”http://111.13.110.75:80/ent/transform/20160624/4P34-fxtmweh2461428.jpg访问格式要求,然后设置遍历周期进行测试,完成访问成功率、连接时间、首字节时间、下载速率、返回码等应用层指标收集,周期性遍历测试结果表如下(以6个大文件缓存业务节点巡检结果进行示例):

表1周期性遍历测试结果表

根据上表数据系统自动判断缓存业务节点2服务故障,并匹配为缓存业务节点告警单元,产生缓存业务节点故障告警,除缓存业务节点2外的其它缓存业务节点服务质量优秀,缓存回源质量良好,回源下载资源约耗时5ms。

本发明已在通讯运营商网络进行缓存服务质量的遍历性监测,进行了商用,并取得了良好的监测效果。

本发明的优点在于模块化、单元化的设计结构便于后期系统功能优化和扩展;从应用的角度衡量各缓存业务节点的服务质量,是监测各缓存业务节点服务质量最直接和最有效的方式,是对缓存网管有力的补充;通过遍历的方式达到对所有缓存业务节点的全覆盖监测,提高缓存服务质量的测试效率;本发明最快在单个测试周期内即可对缓存故障节点和服务质量下降节点进行告警;本发明覆盖了网络及缓存回源的过程,涵盖了包括缓存自身以及其它因素造成的缓存业务质量问题。

尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。本发明的范围由所附权利要求极其等同限定。

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