性能测试基础---联机负载&IP欺骗
·联机负载&IP欺骗
·联机负载:又叫分布式负载,即通过多台负载机(压力机)运行脚本,向服务器发送请求,从而实现更多的负载压力。
·联机负载的具体操作:
·了解两个概念:
·控制机:所谓控制机就是指运行Loadrunner的Controller组件,设计场景计划的机器。
·负载机:所谓负载机,就是指被Controller连接并且控制的机器,用来运行脚本,向服务器发送请求的机器。
·前提条件:
·控制机要安装LR,负载机至少要有Load Generator组件(or LR)。
·控制机和负载机,负载机和服务器之间的网络要能够连通。
·操作步骤:
第一步:在负载机上启动Loadrunner Agent相关进程or服务。
LR提供了两种方式:
·Loadrunner agent processor:以进程方式启动agent,重启机器进程不会自动启动。对应的进程叫magentproc.exe。
·Loadrunner agent runtime settings configuration:以服务方式启动,会自动设置为开机自启动方式。对应的进程叫magentservice.exe。
PS:两种方式只需要一种即可。
第二步:在控制机上添加负载机。
通过Controller中的Scenario--Load Generators菜单进行添加。
·选项:
name:填写的是负载机的机器名orIP地址。建议使用负载机的IP地址。
platform:平台,根据负载机的操作系统类型选择。
PS:最后一定要点击Connect按钮进行连接测试,确保连接是可用的。
第三步:分配虚拟用户到负载机。
LR中分配方式有两种:
·一组用户分配到一台负载机上。
·一组用户分配到多台负载机。
·注意事项:
·一定要确保控制机和负载机、负载机和被测服务器的网络的通畅。
·如果负载机是win7 or win2008及以上,则需要右键以管理员身份启动agent。
·如果负载机上有防火墙,则需要允许LR的连接。
·脚本的运行环境是负载机,如果脚本中用到了脚本以外的一些参数文件or第三方文件,则需要通过Vugen中的菜单File--add files to script方式来将第三方文件加入到脚本中。
PS:联机负载并不能增加LR的虚拟用户数的许可数量。
·IP欺骗:
·何谓IP欺骗?
性能测试一般来说都是通过一台负载机来模拟很多的虚拟用户向服务器发送请求。默认情况下,这些虚拟用户使用的IP地址都是一样的。
那么IP欺骗要达到的效果:同一台机器上的多个虚拟用户使用不同的IP地址向服务器发送请求。
·为什么要做IP欺骗?
·服务器or测试环境中有和IP相关的一些安全措施,会禁止or影响到我们的测试。
·被测服务器启用了负载均衡策略,并且使用了基于IP的策略。
·IP欺骗的原理:
·单台机器上可以有多个网卡or一张网卡可以添加多个IP地址。
·在IP层,IP协议会封装源地址和目的地址。也就意味着服务器就是通过IP协议封装的地址来进行IP识别的。
·LR中IP欺骗的操作步骤
·第一步:在负载机上添加IP地址。
添加方式很多,通过工具添加、命令or手动的方式都可以。
·第二步:在控制机上启用IP欺骗。
通过勾选Controller中的菜单Secnario--Enable ip spoofer即可。
·注意事项:
·负载机的IP设置不能采用DHCP方式,必须是静态设置(static)。
·IP地址一定要真实可用。就是指所添加的地址能够和被测服务器进行通信。
一般来说,如果是同网段的IP地址,一般是需要做额外的处理的。而如果是非同网段的IP地址,则需要在被测服务器上添加对应的路由信息。
PS:建议通过公司的IT运维工程师来进行。
·IP欺骗和联机负载互相不冲突。但是一定要记得,IP欺骗时,IP地址一定要绑定在负载机(即真实运行脚本的机器上)。
·负载机上不可用的网络设备一定要禁用。所谓不可用,就是指没有分配地址、分配地址失败(169开头的地址)、分配了地址但是地址和被测服务器无法通信的。
PS:影响最大的就是虚拟网卡、宽带、VPN连接等。
·测试完毕之后,负载机要释放IP地址,服务器要还原路由设置。
·如果测试环境中,任意网络节点启用了NAT机制,则IP欺骗无效。
性能测试基础---联机负载&IP欺骗的更多相关文章
- 性能测试工具LoadRunner19-LR之Controller IP欺骗
概念 IP地址欺骗是指用户操作产生的IP数据包为伪造的源IP地址,以便冒充其他系统或发件人的身份.这是一种黑客的攻击形式,黑客使用一台计算机上网,而借用另外一台机器的IP地址,从而冒充另外一台机器与服 ...
- 转 LoadRunner 技巧之 IP欺骗 (推荐)
IP欺骗也是也loadrunner自带的一个非常有用的功能. 需要使用ip欺骗的原因: 1.当某个IP的访问过于频繁,或者访问量过大是,服务器会拒绝访问请求,这时候通过IP欺骗可以增加访问频率和访问量 ...
- LoadRunner 技巧之 IP欺骗 (推荐)
IP欺骗也是也loadrunner自带的一个非常有用的功能. 需要使用ip欺骗的原因:1.当某个IP的访问过于频繁,或者访问量过大是,服务器会拒绝访问请求,这时候通过IP欺骗可以增加访问频率和访问量, ...
- LoadRunner 技巧之 IP欺骗
IP欺骗也是也loadrunner自带的一个非常有用的功能. 需要使用ip欺骗的原因:1.当某个IP的访问过于频繁,或者访问量过大是,服务器会拒绝访问请求,这时候通过IP欺骗可以增加访问频率和访问量, ...
- 【Loadrunner】初学Loadrunner——IP欺骗
因为在默认情况下,同一个用户用同一个IP访问运行是不符合实际情况的,而且很多网站会自动屏蔽同个IP多次重复访问.那么就想到了Loadrunner的虚拟IP技术,也就是常说的IP欺骗.在用Loadrun ...
- LoadRunner学习知多少--IP欺骗使用
使用IP欺骗功能时,需要将系统防火墙,杀毒软件关闭(如果有影响的话) 一.为什么要设置IP欺骗 1. 当某个IP的访问过于频繁,或者访问量过大时,服务器会拒绝访问请求,这时候通过IP欺骗可以增加访问频 ...
- LR IP欺骗
一.设置IP欺骗的原因: 1.当某个IP的访问过于频繁,或者访问量过大是,服务器会拒绝访问请求,这时候通过IP欺骗可以增加访问频率和访问量,以达压力测试的效果 2.某些服务器配置了负载均衡,使用同一个 ...
- Loadrunner如何进行有效的IP欺骗
柠檬班的清风同学某天紧急求助如何搞IP欺骗,端午节后,抽时间把这个事情搞定啦!跟大家详细的讲讲IP欺骗的运用和理解. 一.什么是IP欺骗 给你客户端的IP地址加个马甲,让服务器端识别不到是同一个IP地 ...
- LoadRunner中的IP欺骗的设置以及误区
LoadRunner中的IP欺骗的设置以及误区 最近在忙着部署web性能测试的环境后,对IP欺骗进行设置,特地做个笔记,给自己的学习历程留下点足迹. 一. 什么是IP欺骗? 做什么事首先要问个为什么, ...
随机推荐
- eclipse Referenced file contains errors (http://www.springframework.org/schema/context/spring-context-3.0.xsd)
1.情景展示 spring配置文件报错信息如下: Referenced file contains errors (http://www.springframework.org/schema/ ...
- Docker环境下的前后端分离项目部署与运维(九)后端项目部署与负载均衡
数据库准备 建立数据库 renren_fast ,然后运行renrenfast项目中的db文件夹内的脚本 -- 菜单 CREATE TABLE `sys_menu` ( `menu_id` bigin ...
- python 使用nmap 模块
官网 https://pypi.org/project/python-nmap/ >>> import nmap>>> nm = nmap.PortScannerS ...
- Python argparse 处理命令行小结
Python argparse 处理命令行小结 1. 关于argparse是python的一个命令行解析包,主要用于处理命令行参数 2. 基本用法test.py是测试文件,其内容如下: import ...
- 【VS开发】【C/C++开发】关于boost库的C++11导致的undefined符号问题
undefined reference to boost::program_options::options_description::m_default_line_length 问题最终解决依靠的是 ...
- 饱了吗-web前端个人总结
一.引言 1.0 项目源代码整合 饱了吗前端web:传送门 饱了吗web和app后端:传送门 饱了吗app前端:传送门 饱了吗web展示:传送门 1.1 编写背景 web端开发人员较少,正好以前学习过 ...
- Javascript的闭包(上)
了解了预编译和作用域的相关知识以后我们来看一下开发中常见的工具——闭包.还是来看一个实例. function a(){ function b() { ; console.log(aa); } ; re ...
- Spring JPA事务
目录 1. 概述 促进阅读: 2. 配置不带XML的事务 3. 使用XML配置事务 4. @Transactional 注解 5. 潜在的陷阱 5.1. 事务和代理 5.2. 更改隔离级别 5.3. ...
- C/C++ 指针常量和常量指针
为了区分是指向常量的指针还是const指针(表示指针本身是常量) 一个简便方法:从由往左读,遇到p就替换为“p is a”,遇到*就替换为“point to”,其余不变. const int * p ...
- 11. Scala数据结构(下)-集合操作
11.1 集合元素的映射-map映射操作 11.1.1 看一个实际需求 要求:请将List(3,5,8)中所有的元素都*2,将其结果放到一个新的集合中返回,即返回一个新的List(6,10,16),请 ...