基于SaaS云计算网络性能测试指标研究

来源:中国软件评测中心  作者:马子明  投稿时间:2011-04-02

   1、基于SaaS的云计算

  SaaS(Software as a Service,软件即服务)作为应用软件一种全新销售方式已经开始蓬勃发展起来,但是随着SaaS软件客户的增长,网络存储和带宽等基础资源就会逐步成为发展的瓶颈,“云计算”出现为这个问题的解决提供了方向。

  基于SaaS的云计算,即提供给客户的服务是服务商运行在云计算基础设施上的应用程序,可以在各种客户端设备上通过瘦客户端界面访问,用户不需要管理或控制网络、服务器、操作系统、存储等底层云计算基础设施。

  对软件开发企业来说, 基于SaaS的云计算模式就是自己提供硬件设备与软件投入,然后出租自己的“服务”。因为没有了软件授权费用和硬件使用费用,软件盈利方式将主要通过向客户谋取一定的服务费用来获得。如何衡量软件服务商提供服务的质量优劣,并确定服务收费标准,将是基于SaaS的云计算服务中需要研究和讨论的问题。

  云计算实际应用中,即使是非常小的延误,也可能导致非常大的、而且损失惨重的问题。根据研究表明,金融服务公司的网站通常会在三秒以内做出响应,如果响应时间超过了12秒,该公司的业务就会流失。

  对于基于SaaS的云计算来说,绝大多数供应商通过公网来交付服务。在这种情况下,交付的数据与公网所承载的其他任何内容一样并没有被区别对待,因此,如果其他用户的流量大量涌入了相关连接,Internet就会突然断流。

  因此,对云计算服务所能提供网络性能进行评估和测试,对衡量服务质量尤为重要。

  2、基于SaaS云计算网络性能测试指标

  衡量云计算的网络性能根据使用的网络设备不同拥有很多指标。最常见最关键的性能指标包括以下几项:新建速率(CPS)、并发数(CC)吞吐量(GoodPut)、响应时间(Response Time)。

  (1)新建速率

  新建速率指通过数据中心中间网络每秒可以处理的TCP Session速率,单位为CPS(Connections Per Second)。

  新建速率中的“新建”是指一个TCP Session成功建立并关闭的整个过程,将TCP关闭方式选择使用TCP FIN报文触发的4次握手关闭方式。此种方式最符合当前普遍的网络协议应用模型。在部分特殊业务需求的测试场景下,还可以采用TCP RESET方式进行快速会话关闭,以检验网络系统能够支持的极限性能。

新建速率指标将主要体现数据中心网络设备的CPU运算处理能力。对新建速率测试开始前,应记录网络处理设备的CPU/Memory等关键性能指标,测试过程中和结束后对这些指标进行监控,实时了解整个网络的运行情况。

   (2)并发数

  并发数指通过数据中心中间网络可以同时并发存在的最大TCP Session数量,单位为CC(Current Connections)。

  并发数指标体现了整网会话保持与表项存储的能力,与网络处理设备的内存大小有直接关系。

  对于并发数指标测试来说,尤其需要关注其上层协议的具体应用,一个Telnet连接保持1小时与一个http连接保持1小时在协议处理流程上是有很大不同的,应尽量根据实际网络中的业务流量设计测试模型。

  (3)吞吐量

  吞吐量指当前网络可以有效传输的最大http数据量,也被称为有效吞吐GoodPut,区别于传统意义上的测试指标吞吐量ThroughPut,结果单位为BPS(Byte Per Second)。

  吞吐量指标除了受新建速率的直接影响外,还会受到网络中各设备的交换架构、接口总线等元件单位间处理能力的限制,也直接体现了整个网络的应用数据吞吐转发能力。

  吞吐量测试结果很大程度上依赖于新建速率能力,其间关系类似于传统吞吐量BPS(Bit Per Second)与网络设备包转发能力PPS(Packets Per Second)之间的关系。在测试吞吐量的过程中,首先测得网络的新建速率,然后将新建速率测试结果乘以一定比率系数,作为吞吐量测试中使用的的稳定新建速率参数始终不变,测试时逐步提高HTTP有效载荷大小,通过观察出现HTTP连接出现失败前的有效载荷最大传输速率,得到其吞吐量测试结果。

  (4)响应时间

  响应时间指从客户端发起http请求,到得到正确数据响应所经历的时间,一般用来衡量中间网络的综合处理能力,单位为毫秒。

  响应时间指标测试方法主要有两种:一种是基于真实服务器的业务响应时间测试,此测试结果包含了中间网络设备与服务器两部分处理延迟时间;另一种是通过测试仪模拟服务器快速响应请求的测试,这种测试方法可以尽量减少服务器端处理延迟的影响,得到近乎纯粹的网络处理延迟时间。

转:SAAS 测试的更多相关文章

  1. 【转】腾讯移动品质中心TMQ [腾讯 TMQ] 测试管理平台大比拼

    简介 测试管理平台是贯穿测试整个生命周期的工具集合,它主要解决的是测试过程中团队协作的问题,比如缺陷管理.用例管理.测试任务管理等. 目前市面上比较流行的测试管理工具有QC. Mantis. BugZ ...

  2. 架构设计哲学【三种方式:支持DevOps的原则】

    三种方式:支持DevOps的原则 2012年8月22日作者Gene Kim 45条评论 这篇文章是杨波老师分享的一篇文章:这几年对他架构影响最深的一篇文章.主要描述是关于DevOps的,但对系统架构同 ...

  3. 【转】《从入门到精通云服务器》第七讲—IAAS、PAAS、SAAS

    Saas.Paas.IaaS这三个词,一直困扰众人很久.就拿字面意思来说,分别是:软件即服务,平台即服务,设施即服务.小编表示这个不往深了讲,真心看不懂,还容易弄混淆.今天我们就来扒一扒这三者的深层含 ...

  4. 云计算的三种服务模式:SaaS/PaaS/IaaS

    转载http://blog.chinaunix.net/uid-22414998-id-3141499.html 定义 云计算主要分为三种服务模式,而且这个三层的分法重要是从用户体验的角度出发的: S ...

  5. IaaS, PaaS, SaaS 解释

    IaaS.PaaS.SaaS作为云计算三种服务模式,下面会着重介绍他们的定义.作用.功能.对应产品以及他们之间的关系等. 一.定义:     SaaS:Software as a Service,软件 ...

  6. LR12.53—第6课:运行负载测试

    第6课:运行负载测试 当你运行一个负载测试,LoadRunner将生成系统上的负载.然后,您可以使用LoadRunner的监控器和图形负载下,观察系统的性能. 在这一课中,你将涵盖以下主题: 一目了然 ...

  7. LR12.53—第5课:创建负载测试场景

    在前面的课程中,您使用VuGen将验证您的Vuser脚本.在本课中,您将评估多个Vuser的负载下您的系统.您将模拟十个旅行代理同时使用航班预订系统的行动,以及这些用户的负载下观察系统的行为.设计和运 ...

  8. LR12.53—第4课:准备Vuser脚本进行负载测试

    第4课:准备Vuser脚本进行负载测试 在前面的课程中,您确认您的Vuser脚本的回放产生了真正的用户的精确仿真.下一个步骤是准备的脚本负载测试.如何将多用户系统同时工作的工作?会拖慢系统到不可接受的 ...

  9. 海量用户-高并发SAAS产品测试上线流程

    海量用户高并发SAAS产品测试上线流程 SAAS产品测试上线流程-以Web插件产品为例子 1   概述 在互联网产品中,IT公司之间更加注重产品功能之间的协作,SAAS形态的产品扮演着越来越重要的作用 ...

随机推荐

  1. HttpClientUtil简介

    使用HttpClient发送请求.接收响应. http协议可以说是现在Internet上面最重要,使用最多的协议之一了,越来越多的java应用需要使用http协议来访问网络资源,HttpClient ...

  2. 安装mysql因为/tmp权限不足而导致ERROR 1045 (28000): Access denied for user root@localhost (using password: NO)的解决方案

    本机是centos 6.5  安装的mysql是5.1的版本. 在安装mysql之后,第一次启动mysql服务的时候,需要/tmp有777(rwxrwxrwx)的权限,然而楼主的/tmp是755(rw ...

  3. Object有哪些公用方法?

    protected Object clone() 创建并返回此对象的一个副本.public boolean equals(Object obj) 指示其他某个对象是否与此对象"相等" ...

  4. 印刷电路板(PCB)的材料

    以玻璃为基础材料的板材可以在高达150℃到250℃的温度下使用.可选的介质材料有: FR4,介电常数ε0为4.6 环氧材料,介电常数ε0为3.9: 聚酰亚胺,介电常数ε0为4.5. 另外,以聚四氟乙烯 ...

  5. ubuntukylin14安装ns-allinone-2.35教程(虚拟机ubuntu同理)

    准备材料: 1.ubuntukylin14,百度进官网自行下载: 2.ns-allinone-2.35.tar.gz,百度进官网自行下载: 3.虚拟机:vmwareworkstation(可选). 4 ...

  6. Entity Framework 摘记

    1.设置隔离级别 var transactionOptions = new System.Transactions.TransactionOptions(); transactionOptions.I ...

  7. fastdfs-nginx扩展模块源码分析

    FastDFS-Nginx扩展模块源码分析 1. 背景 在大多数业务场景中,往往需要为FastDFS存储的文件提供http下载服务,而尽管FastDFS在其storage及tracker都内置了htt ...

  8. web编程

    展示层 html/css/javascript/jquery/jquery easyUI/ajax bootstrap web层 varnish/haproxy/squid----lvs/keepal ...

  9. virtio-blk简介[转]

    声明: 本博客欢迎转发,但请保留原作者信息!新浪微博:@孔令贤HW: 博客地址:http://lingxiankong.github.io/内容系本人学习.研究和总结,如有雷同,实属荣幸! virti ...

  10. D3树状图给指定特性的边特别显示颜色

    D3作为前端图形显示的利器,功能之强,对底层技术细节要求相对比较多. 有一点,就是要理解其基本的数据和节点的匹配规则架构,即enter,update和exit原理,我前面的D3基础篇中有介绍过,不明白 ...