zoukankan      html  css  js  c++  java
  • 性能测试之tsung

    缘由:之前一直使用jmeter进行性能测试,但是jmeter有个瓶颈(如果并发数加大,会将客户机的硬件资源耗死,当然这种现象可以使用分布式部署执行);后面听说tsung支撑百万并发(事实上后续发现这种百万也是使用的分布式执行),所以本篇就针对tsung进行描述下。

    【1】tsung是什么

     tsung 官方使用手册:http://tsung.erlang-projects.org/user_manual/

     tsung是一个开源、多协议、分布式的压力测试工具。它可以用来测试HTTP, WebDAV, SOAP, PostgreSQL, MySQL, LDAP 和Jabber/XMPP的服务器,并且支持扩展协议。

    【2】tsung的特性

    tsung的主要特性

    1. 高性能:Tsung每台物理计算机可以模拟大量并发用户:它可以在单个CPU上模拟数千个用户

    2. 分布式:负载可以分布在客户端计算机的群集上

    3. 使用插件系统的多协议:当前支持HTTP(标准Web流量和SOAP),WebDAV,Jabber / XMPP和PostgreSQL。LDAP和MySQL插件首先包含在1.3.0版本中

    4. SSL支持

    5. 使用基础OS IP别名,可以在一台计算机上使用多个IP地址

    6. 使用远程服务器或SNMP上的Erlang代理进行OS监视(CPU,内存和网络流量)

    7. XML配置系统:用XML编写复杂的用户场景。可以使用Tsung记录器(仅HTTP和PostgreSQL)通过简单的浏览器编写场景。

    8. 动态方案:可以在负载下从服务器获取动态数据(无需编写任何代码),然后将其重新插入后续请求中。当字符串(或regexp)与服务器响应匹配时,还可以循环,重新启动或停止会话。

    9. 混合行为:在同一基准测试期间,可以使用多个会话来模拟不同类型的用户。您可以定义基准测试方案中各种行为的比例。

    10. 随机过程:为了产生现实的流量,可以使用概率分布(当前为指数)将用户的思考时间和到达率随机化

    【3】tsung的安装

     

    tsung目前只支持Linux系统;tsung是erlang写的,绘制图表时使用的gnuplot,需要使用perl相关库,所以也要安装perl, gnuplot。

    1. 安装依赖

      yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel

      yum install perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker

      yum installflexerlang systemd-devel autoconf automake lksctp-tools-devel m4 ncurses-develzlib-devel unixODBC-devel emacs emacs-el wxGTK3-devel

    2. 安装perl及gnuplot

      yum -y install perl

      yum -y install gnuplot

    3. 编译安装

      ./configure

      make &&make install

     【4】tsung的执行

    1. 执行案例

      tsung -f  /usr/share/doc/tsung/examples/http_simple.xml start

    2. 报告

      进入生成的log目录执行命令:

      /usr/lib/tsung/bin/tsung_stats.pl

    3. 结果

     

     

     【5】后记

    具体的使用请参考官网,tsung无界面模式,在Linux上使用xml配置场景或者接口进行执行测试并且开发语言是比较偏的erlang,相对于要入门的新手来说还是比较难的;一般的测试性能执行个人认为使用jmeter还是足够的,对于场景的编写jmeter也是可以胜任的,当然还有另外一种协程类的性能执行工具 locust也是支持百万并发的。工具只是辅助,重要的还是测试策略的规划,可以实现目标即可。

  • 相关阅读:
    广域网(ppp协议、HDLC协议)
    0120. Triangle (M)
    0589. N-ary Tree Preorder Traversal (E)
    0377. Combination Sum IV (M)
    1074. Number of Submatrices That Sum to Target (H)
    1209. Remove All Adjacent Duplicates in String II (M)
    0509. Fibonacci Number (E)
    0086. Partition List (M)
    0667. Beautiful Arrangement II (M)
    1302. Deepest Leaves Sum (M)
  • 原文地址:https://www.cnblogs.com/VVsky/p/13565050.html
Copyright © 2011-2022 走看看