转: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形态的产品扮演着越来越重要的作用 ...
随机推荐
- 【Android Studio快捷键】之代码提示
接下来说如何设置代码自动提示,如图: 图上内容比较多,我直接按区域划分成6块区域来说吧: 区域1:这个选项是关于提示的时候如何进行匹配,即按照什么条件来进行提示内容的搜索. All:选择这个的话,意思 ...
- html5基础知识点
1.WEB基础知识 1.WEB 与 Internet 1.Internet 互联网 若干台计算机 通过 网线 所连接而成的物理设备 主要服务: 1.Telnet 2.Email 3.WWW(Word ...
- xml报文的装配解析
xstream dom 将map自动转化为xml报文 http://blog.csdn.net/lisheng19870305/article/details/45847985 报文的通信
- Kali2.0VMwareTools安装
安装完系统后,配置好apt源,然后执行下列语句可成功安装VMwareTools工具,可实现本机与虚拟机之间的文件复制等功能: apt-get install open-vm-tools-desktop ...
- 学习笔记-Java编程思想
2016-01-03 Swith(整数选择因子):必须是int或char这样的整数值. Java中不包含goto语句,但是可以通过标识符实现类似的控制.
- WPF-编程问题和解决
1.wpf中点击button按钮后怎么让TextBlock显示button按钮的值? <TextBlock x:Name="CurProtext" Grid.Column=& ...
- Base64编码及其作用
Base64编码的作用:由于某些系统中只能使用ASCII字符.Base64就是用来将非ASCII字符的数据转换成ASCII字符的一种方法.它使用下面表中所使用的字符与编码. 而且base64特别适合在 ...
- Yii2.0中form->field如何获取主表的一个字段并且设置为只读
<?= $form->field($model, 'last_login_time')->textInput(['readonly' => 'true']) ?>
- logging mod
http://blog.csdn.net/freeking101/article/details/52448580
- java获得某个月的天数
/*** 方法一*/ String strDate = "2012-02"; SimpleDateFormat format = new SimpleDateFormat(&quo ...