tsung是用erlang開發的一款簡單易用的壓力測試工具,可以生成成千上萬的用戶模擬對服務器進行訪問。目前對tsung的理解也僅限於會簡單的應用,其內部結構沒有深入研究過。
1、安裝
tsung是用erlang編寫的,所以首先安裝erlang的運行環境。然后就是按照tsung的官網下載編譯tsung。需要注意的是,生成測試報告需要gnuplot和perl的支持,其中perl需要安裝Template擴展。具體安裝過程請看相關手冊或者google之。
2、配置文件
默認情況下,tsung會加載配置文件
~/.tsung/tsung.xml
將tsung自帶的http的配置示例
/usr/share/doc/tsung/examples/http_simple.xml
復制到該位置,修改一下即可運行。一個最簡單的配置文件:
<?xml version="1.0"?>
<!DOCTYPE tsung SYSTEM "/usr/share/tsung/tsung-1.0.dtd">
<tsung loglevel="notice" version="1.0">
<clients>
<client host="localhost" use_controller_vm="true" maxusers="100000"/>
</clients>
<servers>
<server host="172.16.33.203" port="10013" type="tcp"></server>
</servers>
<monitoring>
<monitor host="myserver" type="snmp"></monitor>
</monitoring>
<load>
<arrivalphase phase="1" duration="1" unit="minute">
<users interarrival="0.01" unit="second"></users>
</arrivalphase>
</load>
<sessions>
<session name="http-example" probability="100" type="ts_http">
<request>
<http url="/a.php" method="GET" version="1.1"></http>
</request>
<!--<thinktime value="1" random="true"></thinktime>-->
<request>
<http url="/b.php" method="GET" version="1.1"></http>
</request>
</session>
</sessions>
</tsung>
clients:用戶產生的方式
servers:被測試的服務器
monitoring:通過一些協議如snmp監控服務器的狀態(本人沒有使用過)
load:壓力配置
sessions:用戶所產生的會話
運行命令
tsung start
壓力測試開始,tsung輸出一段提示,告知測試記錄的位置,可以使用命令
tsung status
查看tsung當前的狀態
...
more: http://tiandiou.blog.163.com/blog/static/2355668220115392725727/