2018-12-20 09:58:54 wumiqing1 阅读数 1000
  • 最全渗透测试工具讲解

    渗透测试工具详解视频教程,该课程分为三个部分,1、针对web扫描工具介绍,2、针对抓包工具介绍,3、针对信息探测介绍。(没章节都会将该章节介绍的工具共享给大家)这三部分基本涵盖了渗透测试中百分之80常见工具的使用。让小白测试人员在面对一个web系统时有一个基本的思路,方便后续深入学习web渗透。

    3570 人正在学习 去看看 铭智

需求描述:需要测试cdh集群的组件的性能和稳定性。

压力测试工具选型:HiBench

HiBench测试工具说明:

HiBench是一套基准测试套件,用于帮助我们评估不同的大数据框架性能指标(包括处理速度、吞吐等)的负载指标,可以评估Hadoop、Spark和流式负载等

源码下载:wget https://github.com/intel-hadoop/HiBench/archive/HiBench-7.0.zip

源码编译:命令:mvn -Dspark=2.1 -Dscala=2.11 clean package

官方文档:https://github.com/intel-hadoop/HiBench/blob/master/docs/build-hibench.md

 

前提条件:

1)、需要python2.x(>=2.6)

2)、需要linux bc命令,用于生成Hibench 报告,若没有,则安装:yum install bc

 

修改配置:

vim conf/hadoop.conf

hibench.hadoop.home:hadoop安装目录
hibench.hadoop.executable:你的bin/hadoop所在目录,一般是{HADOOP_HOME}/bin/hadoop
hibench.hadoop.configure.dir:hadoop配置文件所在目录,一般位于HADOOP_HOME}/etc/hadoop
hibench.hdfs.master:hdfs上存储Hibench数据的目录,如:hdfs://localhost:8020/user/hibench
hibench.hadoop.release:hadoop发行版提供者,支持value:apache, cdh5, hdp
 

 /root/apps/HiBench-master/conf
          -rw-r--r-- 1 root root  245 Dec 12 21:30 benchmarks.lst
-rw-r--r-- 1 root root  332 Aug 13 02:34 flink.conf.template
-rw-r--r-- 1 root root   13 Dec 12 21:30 frameworks.lst
-rw-r--r-- 1 root root  246 Aug 13 02:34 gearpump.conf.template
-rw-r--r-- 1 root root  471 Dec 13 20:30 hadoop.conf
-rw-r--r-- 1 root root  448 Aug 13 02:34 hadoop.conf.template
-rw-r--r-- 1 root root 6600 Dec 18 04:57 hibench.conf
-rw-r--r-- 1 root root 1640 Dec 18 22:42 spark.conf
-rw-r--r-- 1 root root 1655 Aug 13 02:34 spark.conf.template
-rw-r--r-- 1 root root  942 Aug 13 02:34 storm.conf.template
drwxr-xr-x 8 root root  109 Dec 14 02:49 workloads #里面有对应配置产生的数据量配置

举例:micro
[root@gsafety1 conf]# ll /root/apps/HiBench-master/conf/workloads/micro
total 20
-rw-r--r-- 1 root root 1920 Aug 13 02:34 dfsioe.conf
-rwxr-xr-x 1 root root  805 Aug 13 02:34 sleep.conf
-rw-r--r-- 1 root root  657 Aug 13 02:34 sort.conf
-rw-r--r-- 1 root root  571 Dec 18 04:40 terasort.conf
-rwxr-xr-x 1 root root  658 Dec 14 02:38 wordcount.conf

目录结构:

  /root/apps/HiBench-master/bin/workloads下面有:
                  graph
                  micro#选这个!!测试
                  ml
                  sql
                  streaming
                  websearch

 

测试算法包:
  /root/apps/HiBench-master/bin/workloads/micro/dfsioe# hdfsio测试
  /root/apps/HiBench-master/bin/workloads/micro/sleep
  /root/apps/HiBench-master/bin/workloads/micro/sort
  /root/apps/HiBench-master/bin/workloads/micro/wordcount
  
   cd /root/apps/HiBench-master/bin/workloads/micro/terasort#排序
   准备数据启动:
   /root/apps/HiBench-master/bin/workloads/micro/terasort/prepare/prepare.sh
   启动mr任务:
   /root/apps/HiBench-master/bin/workloads/micro/terasort/hadoop/run.sh
   启动spark任务:
   /root/apps/HiBench-master/bin/workloads/micro/terasort/spark/run.sh

 

测试报告:

 /root/apps/HiBench-master/report
               drwxr-xr-x 4 root root   44 Dec 14 03:58 bayes
                -rw-r--r-- 1 root root 6651 Dec 19 01:39 hibench.report
                drwxr-xr-x 3 root root   28 Dec 13 23:56 sort
                drwxr-xr-x 4 root root   44 Dec 13 03:45 terasort
                drwxr-xr-x 5 root root   61 Dec 12 04:11 wordcount

2019-06-03 23:11:13 weixin_36063821 阅读数 63
  • 最全渗透测试工具讲解

    渗透测试工具详解视频教程,该课程分为三个部分,1、针对web扫描工具介绍,2、针对抓包工具介绍,3、针对信息探测介绍。(没章节都会将该章节介绍的工具共享给大家)这三部分基本涵盖了渗透测试中百分之80常见工具的使用。让小白测试人员在面对一个web系统时有一个基本的思路,方便后续深入学习web渗透。

    3570 人正在学习 去看看 铭智

RelaxHeart网 - 王琦 :JMeter:性能测试和压力测试工具

JMeter简介


JMeter时Apache下基于java的一款性能测试和压力测试工具。它基于Java开发,可对HTTP服务器华人FTP服务器,甚至是数据库进行压力测试。作为一款专业的压测工具,JMeter功能强大,本片文章中仅简单介绍与本次压测相关的内容,从JMeter下载安装,接口压测使用两个方面来说明。

JMeter下载安装


下载

测试机:windows 64位系统
JMeter下载地址:Jmeter安装包下载链接

下载Jmeter包,在下载页面会有2种下载分类,一个是Binaries,一个是source,如下图:

1.png
一般开放原代码软件都会有两个版本发布: Source Distribution 和 Binary Distribution ,二者有啥区别?
Source 是源代码版,你需要自己编译成可执行软件。
Binaries是可执行版,直接下载解压就可以拿来用的,他已经给你编译好的版本。

》这里我们下载Binaries可执行版。

安装
  1. 解压我们下载好的安装包到指定目录,进入bin目录,点击jmeter,稍等几秒钟就可以启动,看到图形化界面:
    JMeter安装:解压

JMeter启动

JMeter启动成功

JMeter使用:接口压测


接口准备:这边我的个人网站(http://www.relaxheart.cn)中有一个 “通过IP地址获取地理位置” 的API接口.

http://localhost:8087/rest/api/ip2Address/{ip}/

http://www.relaxheart.cn

下面,我们以这个接口的性能压测为例来一块看下JMeter的使用。

创建一个测试计划

image.png

添加线程组

编辑 / 添加 / 线程(用户)/ 线程组
添加线程组

配置线程组

配置一个拥有10个线程的线程组,并让每个线程循环工作200次
线程组配置

分配采样器

在线程组下,需要给线程组分配相应的采样器,比如HTTP请求、FTP请求、数据库连接等。线程组会完成采样器的工作。下图中我们分配了一个HTTP的采样器。

右键线程组 / 添加 / 取样器 / HTTP请求
分配HTTP采样器

HTTP采样器参数设置

主要有一下几个参数:服务器ip、端口号、访问路径以及HTTP参数等。
HTTP采样器参数设置

添加聚合报告

除了线程组、采样器外,最后我们还需要一份测试报告。JMeter可以给出各种形式或侧重于各个方面的测试报告。在我们这个实验中,我需要一份聚合报告便于我直观的观察出压测结果。

编辑 / 添加 / 监听器 / 聚合报告
添加聚合报告

其中聚合报告含多项参数,包含平均响应时间(avg rt),错误数和吞吐量等。

开始测试

直接点击启动即可进行测试。
测试

测试

压测结束

压测结果分析

压测结果分析

总结


JMeter是一款优秀的开源软件,使用JMeter可以方便的对Web应用程序(主要指API接口)进行压力测试和性能测试。

RelaxHeart网 - Tec博客: 我的更多文章

2014-11-12 12:55:49 zhouyangang2008 阅读数 218
  • 最全渗透测试工具讲解

    渗透测试工具详解视频教程,该课程分为三个部分,1、针对web扫描工具介绍,2、针对抓包工具介绍,3、针对信息探测介绍。(没章节都会将该章节介绍的工具共享给大家)这三部分基本涵盖了渗透测试中百分之80常见工具的使用。让小白测试人员在面对一个web系统时有一个基本的思路,方便后续深入学习web渗透。

    3570 人正在学习 去看看 铭智
最近,公司的项目要同时支持三种数据库:mysql、神通、达梦。因此需要对三种数据库的性能进行比对。
1>在进行数据库写压力测试时,开源工具dbmonster,个人感觉配置比较简单,用起来也比较方便、灵活。不过网上找的配置教程,一般在最后一步,执行:dbmonster.bat -c dbmonster.properties -s dbmonster-schema.xml, 总是报错,提示找不到Main类。
后来打开dbmonster.bat发现,在执行以下命令时出错:
[color=green]java -classpath %CLASSPATH% pl.kernelpanic.dbmonster.Launcher %*[/color]
因为我在系统环境变量中设置的CLASSPATH是带空格的(如"Program File"),这样会导致%CLASSPATH%解析错误,需要在%CLASSPATH%加双引号,如下:
[color=green]java -classpath "%CLASSPATH%" pl.kernelpanic.dbmonster.Launcher %*[/color]
再次运行dbmonster.bat -c dbmonster.properties -s dbmonster-schema.xml就不会报错了,可以正常的写入数据。
2>还有,在执行时,经常提醒数据库连接的用户不存在,后来发现,是dbmoster.properties里面的:
[color=green]dbmonster.jdbc.username=admin [/color]
"admin"后面多了一个空格,看来dbmonster进行配置文件读取时,没有进行空格的处理,所以导致用户名不存在,将空格去除后,可以正常连接了。
3>网上的教程,都说dbmonster-core-1.0.3版本,含有BinaryGenerator,这个用来往数据库中写入Blob的类,但是实际的dbmonster-core-1.0.3.jar包中,不含有这个类,因此无法往数据库中写入Blob数据。需要从网上下一个dbmonster-core-1.0.4.jar的jar包,和dbmonster-core-1.0.3.jar放在同一级目录下,即可解决Blob的读写问题。(dbmonster-core-1.0.4.jar包见附件)
4>dbmonster主要用来对数据库进行压力写的测试,查看java控制台,可以看到,dbmonster启动了10个左右的线程,去并行访问数据库进行写操作。
5>如果要对数据库进行高并发读测试,可以采用jmeter,配置,使用也比较简单,网上很多教程。
2019-06-29 19:23:13 qq_36522306 阅读数 141
  • 最全渗透测试工具讲解

    渗透测试工具详解视频教程,该课程分为三个部分,1、针对web扫描工具介绍,2、针对抓包工具介绍,3、针对信息探测介绍。(没章节都会将该章节介绍的工具共享给大家)这三部分基本涵盖了渗透测试中百分之80常见工具的使用。让小白测试人员在面对一个web系统时有一个基本的思路,方便后续深入学习web渗透。

    3570 人正在学习 去看看 铭智

压力测试工具ApacheBench

ApacheBench工具简介

  • 官网解释: ab是Apache的超文本传输​​协议(HTTP)的性能测试工具。其设计意图是描绘当前所安装的的Apache的执行性能,主要是显示你安装的Apache的每秒可以处理多少个请求。
  • 个人理解: ab是单接口测试最方便的工具, 它会模拟多线程并发请求。 ab命令对发出负载的计算机要求很低,既不会占用很多CPU,也不会占用太多的内存,但却会给目标服务器造成巨大的负载, 简单DDOS攻击等。

Mac系统上安装ApacheBench工具

官网下载

安装工具

安装 apr
  1. 输入命令brew install apr下载apr工具
    在这里插入图片描述
  2. 把安装好的apr追加到配置文件: echo `export PATH="/usr/local/opt/apr/bin:$PATH"` >> ~/.zshrc
    在这里插入图片描述
安装 apr-util
  1. 输入命令brew install apr-util下载apr-util
    在这里插入图片描述
  2. 把安装好的apr-util追加到配置文件echo `export PATH="/usr/local/opt/apr-util/bin:$PATH"` >> ~/.zshrc
    在这里插入图片描述
  3. 如果本机没安装pcre, 需要执行brew install pcre, 再追加到~./zshrc配置文件中
安装 httpd
  1. 进入到httpd目录
  2. 执行./configure
  3. 执行sudo make
  4. 执行sudo cd ~make install

启动测试

  1. 写一个接口提供给Apche ab进行测试
package com.study.java.example;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;

/**
 * Copyright: Copyright (c) 2019 LanRu-Caifu
 *
 * @ClassName: ApcheToolsTest
 * @Description: ab测试
 * @author: liusheng
 * @date: 2019-06-29 18:46
 * @version: v1.0.0
 * ---------------------------------------------------------*
 * Modification History:
 * Date          Author         Version         Description
 * ---------------------------------------------------------*
 * 2019-06-29   liusheng        v1.0.0          Modify reason
 */
@RestController
@RequestMapping("/ab")
public class ApcheToolsTest {

    @GetMapping("/test")
    @ResponseBody
    public String testApcheToolAb() {
        return "ab - Apache HTTP server benchmarking tool";
    }

}
    
  1. 打开终端, 输入 ab -n 1 -c 1 http://127.0.0.1:8080/ab/test/进行测试
    在这里插入图片描述

压力测试结果关键数据说明

三个重要参数

  • Requests per second 吞吐率
  • Concurrency Level 并发用户数
  • Time per request 用户平均请求等待时间

ab命令常用选项

选项 相应功能
-n 执行请求的数量
-c 每个请求的并发连接数
-t 等待响应时间
-V 显示版本信息
2019-02-15 14:28:29 demonson 阅读数 915
  • 最全渗透测试工具讲解

    渗透测试工具详解视频教程,该课程分为三个部分,1、针对web扫描工具介绍,2、针对抓包工具介绍,3、针对信息探测介绍。(没章节都会将该章节介绍的工具共享给大家)这三部分基本涵盖了渗透测试中百分之80常见工具的使用。让小白测试人员在面对一个web系统时有一个基本的思路,方便后续深入学习web渗透。

    3570 人正在学习 去看看 铭智

一、工具

fio:测试Linux磁盘IO性能;

tpcc-mysql:只针对mysql的测试工具,很权威;

dbt2:比较全面会统计出系统的资源情况,可以对postgresql,mysql等数据库压测;

sysbench:不仅压测数据库,还可以压测系统的资源,传统只针对单个表的压测,tpcc

                  只是固定模型,并不符合实业务逻辑,所以可以使用sysbench指定定制压测;

二、基准测试

只读测试:sysbench(点、范围、统计、排序、唯一等查询);

TPC-C测试:tpcc-mysql、DBT2(调整数据库性能参数、用户压力、实力配置);

读写比自定义测试:sysbench(定义读写比例、读写类型比例);

三、定制测试

定制sql模型(业务逻辑sql)

定制开发工具(sysbench上lua脚本定制)

流量加速回放(录制sql,备库压力回放,测试瓶颈)

全链路测试(通过业务层模拟,成本较高,不影响线上业务)

四、性能评估

TPS

QPS

RT

稳定性

CPU

IO

内存

网络

 

 

 

 

 

 

没有更多推荐了,返回首页