转:SAAS 测试
基于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 测试的更多相关文章
- 【转】腾讯移动品质中心TMQ [腾讯 TMQ] 测试管理平台大比拼
简介 测试管理平台是贯穿测试整个生命周期的工具集合,它主要解决的是测试过程中团队协作的问题,比如缺陷管理.用例管理.测试任务管理等. 目前市面上比较流行的测试管理工具有QC. Mantis. BugZ ...
- 架构设计哲学【三种方式:支持DevOps的原则】
三种方式:支持DevOps的原则 2012年8月22日作者Gene Kim 45条评论 这篇文章是杨波老师分享的一篇文章:这几年对他架构影响最深的一篇文章.主要描述是关于DevOps的,但对系统架构同 ...
- 【转】《从入门到精通云服务器》第七讲—IAAS、PAAS、SAAS
Saas.Paas.IaaS这三个词,一直困扰众人很久.就拿字面意思来说,分别是:软件即服务,平台即服务,设施即服务.小编表示这个不往深了讲,真心看不懂,还容易弄混淆.今天我们就来扒一扒这三者的深层含 ...
- 云计算的三种服务模式:SaaS/PaaS/IaaS
转载http://blog.chinaunix.net/uid-22414998-id-3141499.html 定义 云计算主要分为三种服务模式,而且这个三层的分法重要是从用户体验的角度出发的: S ...
- IaaS, PaaS, SaaS 解释
IaaS.PaaS.SaaS作为云计算三种服务模式,下面会着重介绍他们的定义.作用.功能.对应产品以及他们之间的关系等. 一.定义: SaaS:Software as a Service,软件 ...
- LR12.53—第6课:运行负载测试
第6课:运行负载测试 当你运行一个负载测试,LoadRunner将生成系统上的负载.然后,您可以使用LoadRunner的监控器和图形负载下,观察系统的性能. 在这一课中,你将涵盖以下主题: 一目了然 ...
- LR12.53—第5课:创建负载测试场景
在前面的课程中,您使用VuGen将验证您的Vuser脚本.在本课中,您将评估多个Vuser的负载下您的系统.您将模拟十个旅行代理同时使用航班预订系统的行动,以及这些用户的负载下观察系统的行为.设计和运 ...
- LR12.53—第4课:准备Vuser脚本进行负载测试
第4课:准备Vuser脚本进行负载测试 在前面的课程中,您确认您的Vuser脚本的回放产生了真正的用户的精确仿真.下一个步骤是准备的脚本负载测试.如何将多用户系统同时工作的工作?会拖慢系统到不可接受的 ...
- 海量用户-高并发SAAS产品测试上线流程
海量用户高并发SAAS产品测试上线流程 SAAS产品测试上线流程-以Web插件产品为例子 1 概述 在互联网产品中,IT公司之间更加注重产品功能之间的协作,SAAS形态的产品扮演着越来越重要的作用 ...
随机推荐
- MyEclipse JAX-WS Web Service
在Myeclipse8.5下开发Web service程序,目前系统支持的开发框架有3个,JAX-WS,REST(JAX-RS),XFire.其中系统建议不要使用XFire 的框架,可能是要被淘汰了( ...
- LintCode Two Sum
1. 数组numbers == null 及numbers.length == 0, 而不是用numbers[] 2. HashMap<Integer, Integer>而不是<in ...
- TOJ1334
1334: Oil Deposits 时间限制(普通/Java):1000 ...
- JDBC修改表数据
修改数据时用到update语句,使用这个语句时也要有条件的,指定修改某一行的数据,没有条件判断,则修改全部. package qddx.JDBC; import java.sql.*; public ...
- c语言数据结构之 堆排序
算法:先生成随机数,赋值到数组,将数组第一个元素a[0]设置为哨兵,函数调用数组和随机数个数n,再设定n/2的根结点与孩子结点进行比较操作,若右孩子存在,则选出三个数里最小的数赋值给根节点,如果右孩子 ...
- POJ 1101 简单BFS+题意
The Game 题意: Description One morning, you wake up and think: "I am such a good programmer. Why ...
- CentOS7 搭建python3 Django环境
yum install gcc yum install make yum install openssl-devel -y yum install sqlite-devel -y wget https ...
- uva 10820
/* 交表 _________________________________________________________________________________ #include < ...
- Servlet高级
1. 获取初始化参数 在web.xml中配置Servlet时,可以配置一些初始化参数.而在Servlet中可以通过ServletConfig接口提供的方法来取得这些参数. index.jsp < ...
- Matlab语法
第一节 基本数值计算1. 变量:分为数值变量和字符变量 2. 常量:计算机中不变的量.如i.j.pi.NaN(不确定).Inf(无穷大) 3. 字符变量:将字符串作为变量.有三种方法表示: (1 ...