压力测试工具Tsung
1 简介
1.1什么是tsung ?
Tsung (以前称为IDX-Tsunami)是一个分布是负载测试工具。它与协议无关,目前可以用来测试HTTP,WebDAV,SOAP,PostgreSQL, MySQL, LDAP, and Jabber/XMPP
It is distributed under the GNU General Public License version 2.
1.2 什么是erlang 为什么在这里erlang很重要。
tsung 的主要特点是,他可以使用单CPU模拟大量用户,当用于集群中时,你使用它便能产生真正的负载,并且容易安装和维护。
Tsung 使用erlang开发,erlang –-tsung 力量的来源。
Erlang是一个并行化编程语言,tsung 是基于erlang 的OTP(Open Telecom Platform
引用:http://www.cnblogs.com/john-d/archive/2010/04/16/1711276.html)
并且从erang 继承了几个特征:
性能:erlang 支持在一个单一的虚拟机100万的轻量级进程。
可扩展性:自然分布,位置透明性。
容错:erlang强劲的容错系统。因此,错误从服务器发送到tsung不会影响整体。
More information on Erlang on http://www.erlang.org and http://www.erlang-projects.org/
1.3 Tsung 背景
历史
Tsung开发于2001年,由Nicolas Niclausse 作为一种分布式的jabber负载在http://IDEALX.com/内部使用压力的工具。
它已演变为一个开源的多协议负载测试工具。于2003年加入HTTP支持,这个工具已经为几个工业项目使用。现在是由erlang主持项目,由http://process-one.net/支持。贡献者的名单可在源存档的
(https:/ / git.process-one.net/tsung/mainline/blobs/master/CONTRIBUTORS)
它是一个为了模拟真实用户的随机模型。用户事件的分配是基于泊松过程(一种累计随机事件发生次数的最基本的独立增量过程)。关于这一主题的更多信息在:
Z. Liu, N. Niclausse, and C. Jalpa-Villanueva. Traffic Model and Performance Evaluation of Web Servers. Performance Evaluation, Volume 46, Issue 2-3, October 2001.
This model has already been tested in the INRIA WAGON research prototype (Web trAffic GeneratOr and beNchmark). WAGON was used in the http://www.vthd.org/ project (Very High Broadband IP/WDM test platform for new generation Internet applications, 2000-2004).
Tsung 常用于负载测试:
l Jabber/XMPP 协议
90万并发jabber用户(使用4个节点的tsung 集群)(3xSun V240 + 1 Sun V440)
10万并发用户(使用3个结点tsung集群)(CPU 800MHz)
l HTTP and HTTPS 协议
12万并发用户(使用4个结点的tsung集群)该测试平台达到每秒3000个请求
1000万并发用户,(使用75结点的tsung集群,)并发超过100万个请求
Tsung 还使用在:
- DGI (Direction Générale des imp?ts): 法国财政部
- Cap Gemini Ernst & Young
- IFP (Institut Fran?ais du Pétrole): 法国石油研究机构
- LibertySurf
- Sun(TM)for their Mooddlerooms platform on Niagara processors: http://blogs.sun.com/kevinr/resource/Moodle-Sun-RA.pdf