zoukankan      html  css  js  c++  java
  • Tsung:开源多协议分布式负载&压力测试工具

    Main features

    • High Performance: the load can be distributed on a cluster of client machines
    • Multi-protocols using a plugin system: HTTP, WebDAV, SOAP, PostgreSQL, MySQL, LDAP , XMPP/Jabber, BOSH, MQTT and AMQP are currently supported. SSL is also supported.
    • Several IP addresses can be used on a single machine using the underlying OS IP Aliasing
    • OS monitoring (CPU, memory and network traffic) using SNMP, Munin or Erlang agents on remote servers.
    • XML configuration system; several sessions can be used to simulate different type of users. Dynamic sessions can be easily described in XML (this can be used to retrieve at runtime an ID from the server output and use it later in the session).
    • In order to generate a realistic traffic, user think-times and the arrival rate can be randomize using a probability distribution
    • HTML reports can be generated during the load to view response times measurement, server CPU, etc.

    Tsung is developed in Erlang,运行Tsung,需要相关erlang依赖包支持。

    一.安装Tsung

    sudo apt-get update
    sudo apt-get -y install tsung

    或自行下载Tsung源码包安装:http://tsung.erlang-projects.org/

    二.启用SNMP agent(snmpd)监视系统运行

    1. 在目标系统上安装snmpd: apt-get install snmpd
    2. 修改配置文档/etc/snmp/snmpd.conf:
      1)开启所有监视端访问:注释行agentAddress  udp:127.0.0.1:161,然后启用行agentAddress udp:161,udp6:[::1]:161
      2)设置snmp agent可监视(OID分支)范围:注释行view   systemonly  included   .1.3.6.1.2.1.1和view systemonly included .1.3.6.1.2.1.25.1,然后添加行view systemonly included .1
      3)rocommunity public  default    -V systemonly行和rocommunity public  default    -V systemonly行public为默认community,可更改自定义
      4)如果在docker中运行snmpd,修改配置文档/etc/snmp/snmpd.conf后,执行service snmpd [command],这对已启动的snmpd是无效的。因此本人通过重启snmpd所运行的容器(expose 161),然后再执行service snmpd start是可行的方案
    3. 启动snmpd:service snmpd start
    4. 监视端安装snmp来检测监视目标系统snmp agent
      sudo apt-get install snmp
      snmpwalk -v 2c -c public [agent主机名或ip]

    三.试运行Tsung并生成统计报告

    cd ~
    mkdir .tsung
    cp /usr/share/doc/tsung/examples/http_simple.xml .tsung/tsung.xml
    tsung start

    �注意事项:

    1)/usr/share/doc/tsung/examples:Tsung安装后,该目录下有多种配置文档样例可参考
    2)~/.tsung/tsung.xml:默认配置文件。如果该文件不存在,则需添加-f选项,tsung -f myconfigfile.xml start
    3)~/.tsung/log:运行命令tsung start后将生成该日志目录
    4)本例中monitor type为snmp
    5)关于tsung.xml的配置可参考:http://tsung.erlang-projects.org/user_manual/
    cenze@kylin:~/.tsung$ ls log
    20170115-2235
    cenze@kylin:~/.tsung$ cd log/20170115-2235
    cenze@kylin:~/.tsung/log/20170115-2235$ /usr/lib/tsung/bin/tsung_stats.pl
    warn, last interval (7) not equal to the first, use the first one (10)
    No data for Bosh
    No data for Match
    No data for Event
    No data for Async
    No data for Errors
    cenze@kylin:~/.tsung/log/20170115-2235$ ls -l
    总用量 92
    drwxrwxr-x 2 cenze cenze  4096 1月  15 22:51 data
    -rw-rw-r-- 1 cenze cenze  3344 1月  15 22:51 gnuplot.log
    drwxrwxr-x 2 cenze cenze  4096 1月  15 22:51 gnuplot_scripts
    -rw-rw-r-- 1 cenze cenze  7333 1月  15 22:51 graph.html
    drwxrwxr-x 2 cenze cenze  4096 1月  15 22:51 images
    -rw-rw-r-- 1 cenze cenze    62 1月  15 22:35 match.log
    -rw-rw-r-- 1 cenze cenze  8151 1月  15 22:51 report.html
    -rw-rw-r-- 1 cenze cenze 10157 1月  15 22:45 tsung_controller@kylin.log
    -rw-rw-r-- 1 cenze cenze 36480 1月  15 22:45 tsung.log
    -rw-rw-r-- 1 cenze cenze   961 1月  15 22:35 tsung.xml

    �注意事项:

    1)/usr/lib/tsung/bin/tsung_stats.pl:如果当前目录下不存在tsung.log,则需通过选项--stats 指定统计日志文件,执行该脚本后将在当前目录下生成相关统计报告目录及文档
    2)以上为本机上执行的实际情况,点击report.html在浏览器中打开将看到如下界面:

     

  • 相关阅读:
    对称的二叉树
    二叉树的下一个结点
    Go操作Redis实战
    重写Laravel异常处理类
    【论文笔记】Learning to Estimate 3D Human Pose and Shape from a Single Color Image(CVPR 2018)
    ffmpeg第一弹:ffmpeg介绍和开发环境搭建
    程序员你是如何使用镜像中心Harbor的?
    SpringBoot 的 MyBatis 多数据源配置
    Typora+PicGo+Gitee搭建博客写作环境(超详细)
    重学数据结构(八、查找)
  • 原文地址:https://www.cnblogs.com/XiongMaoMengNan/p/6291707.html
Copyright © 2011-2022 走看看