﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-DZM.528-随笔分类-性能测试</title><link>http://www.blogjava.net/duanzhimin528/category/43456.html</link><description>Life is a voyage, not a destination.</description><language>zh-cn</language><lastBuildDate>Thu, 02 Sep 2010 12:48:36 GMT</lastBuildDate><pubDate>Thu, 02 Sep 2010 12:48:36 GMT</pubDate><ttl>60</ttl><item><title>Tsung安装与使用</title><link>http://www.blogjava.net/duanzhimin528/archive/2010/09/01/330582.html</link><dc:creator>DZM.528</dc:creator><author>DZM.528</author><pubDate>Wed, 01 Sep 2010 07:23:00 GMT</pubDate><guid>http://www.blogjava.net/duanzhimin528/archive/2010/09/01/330582.html</guid><wfw:comment>http://www.blogjava.net/duanzhimin528/comments/330582.html</wfw:comment><comments>http://www.blogjava.net/duanzhimin528/archive/2010/09/01/330582.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/duanzhimin528/comments/commentRss/330582.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/duanzhimin528/services/trackbacks/330582.html</trackback:ping><description><![CDATA[
		<meta http-equiv="content-type" content="text/html; charset=utf-8" />
		<span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Verdana; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; font-size: medium;">
				<span class="Apple-style-span" style="font-family: Verdana,Geneva,Arial,Helvetica,sans-serif; font-size: 13px;">Tsung，压力测试的好工具。<br />安装过程：<br />1.获取tsung 的源码。http://tsung.erlang-projects.org/<br />2.安装依赖 erlang(从源码编译 erlang 写的程序) gnuplot perl5(如果想看 report 中的图形，就要装这个)<br />apt-get install erlang erlang-src gnuplot perl5 我用的是Ubuntu 8 OS.<br />3.编译安装<br />./configure<br />make<br />sudo make install<br /><br />安装完成之后的 tsung 运行脚本在 /usr/bin/tsung ，在系统 path 之中，可以直接运行。<br /><br /><p style="margin: 0px 0px 14px;"><strong>设置</strong></p><p style="margin: 0px 0px 14px;">从 /usr/share/doc/tsung/examples 中挑一两个例子拷贝到 ~/.tsung/tsung.xml 作为配置文件。我只需要 http 测试，所以：</p><div><div>cp /usr/share/doc/tsung/examples/http_simple.xml ~/.tsung/tsung.xml</div></div><p style="margin: 0px 0px 14px;">tsung 采用了巧妙的 proxy 方式来“录制”测试脚本。具体来说，就是建立一个本机的 http proxy 默认使用 8090 端口，在配好 firefox 使用 localhost 8090 作为代理之后(推荐 foxyproxy 插件)，所有“流经”这个 proxy 的 http 动作都会被记录下来，测试时可以“回放”这些步骤来产生请求。</p><div><div>tsung rocorder<br />tsung stop_recorder</div></div><p style="margin: 0px 0px 14px;">“录制”完了，会得到一个 ~/.tsung/tsung_recorderXXXXXXXXXX.xml 文件，这就是测试时回回放的脚本。</p><p style="margin: 0px 0px 14px;">将这个脚本加到 tsung.xml 之中</p><div><div>gedit ~/.tsung/tsung.xml</div></div><p style="margin: 0px 0px 14px;">就像这样</p><div><div><span style="color: olive;">&lt;</span><span style="color: gray;">!</span><span style="color: rgb(0, 0, 139);">DOCTYPE</span><span style="color: rgb(0, 0, 139);">tsung</span><span style="color: rgb(0, 0, 139);">SYSTEM</span><span style="color: rgb(139, 0, 0);">"</span><span style="color: red;">/usr/share/tsung/tsung-1.0.dtd</span><span style="color: rgb(139, 0, 0);">"</span><span style="color: gray;"><span class="Apple-converted-space"> </span>[<br /> &lt;!</span><span style="color: rgb(0, 0, 139);">ENTITY</span><span style="color: rgb(0, 0, 139);">mysession1</span><span style="color: rgb(0, 0, 139);">SYSTEM</span><span style="color: rgb(139, 0, 0);">"</span><span style="color: red;">/home/yourname/.tsung/tsung_recorderXXXXXXXXXX.xml</span><span style="color: rgb(139, 0, 0);">"</span><span style="color: olive;">&gt;</span><span style="color: gray;"><br />]&gt;<br />...<br /></span><span style="color: olive;">&lt;</span><span style="color: green;">sessions</span><span style="color: olive;">&gt;</span><span style="color: gray;"><br /> <span class="Apple-converted-space"> </span></span><span style="color: navy;">&amp;mysession1;</span><span style="color: gray;"><br /></span><span style="color: olive;">&lt;/</span><span style="color: green;">sessions</span><span style="color: olive;">&gt;</span></div></div><p style="margin: 0px 0px 14px;">对配置稍作调整</p><div><div><span style="color: olive;">&lt;</span><span style="color: green;">monitoring</span><span style="color: olive;">&gt;</span><span style="color: gray;"><br />    </span><span style="color: olive;">&lt;</span><span style="color: green;">monitor</span><span style="color: rgb(0, 0, 139);">host</span><span style="color: gray;">=</span><span style="color: rgb(139, 0, 0);">"</span><span style="color: red;">localhost</span><span style="color: rgb(139, 0, 0);">"</span><span style="color: rgb(0, 0, 139);">type</span><span style="color: gray;">=</span><span style="color: rgb(139, 0, 0);">"</span><span style="color: red;">erlang</span><span style="color: rgb(139, 0, 0);">"</span><span style="color: olive;">&gt;&lt;/</span><span style="color: green;">monitor</span><span style="color: olive;">&gt;</span><span style="color: gray;"><br /> <span class="Apple-converted-space"> </span></span><span style="color: olive;">&lt;/</span><span style="color: green;">monitoring</span><span style="color: olive;">&gt;</span><span style="color: gray;"><br /> <span class="Apple-converted-space"> </span></span><span style="color: rgb(255, 165, 0);">&lt;!-- 需要配置到 localhost 无须密码的 ssh 登录(ssh via rsa_key)，开启了这个配置可以，获得目标机器的 cpu 和 ram 消耗情况 --&gt;</span><span style="color: gray;"><br /> <span class="Apple-converted-space"> </span></span><span style="color: olive;">&lt;</span><span style="color: green;">load</span><span style="color: olive;">&gt;</span><span style="color: gray;"><br />  <span class="Apple-converted-space"> </span></span><span style="color: olive;">&lt;</span><span style="color: green;">arrivalphase</span><span style="color: rgb(0, 0, 139);">phase</span><span style="color: gray;">=</span><span style="color: rgb(139, 0, 0);">"</span><span style="color: red;">1</span><span style="color: rgb(139, 0, 0);">"</span><span style="color: rgb(0, 0, 139);">duration</span><span style="color: gray;">=</span><span style="color: rgb(139, 0, 0);">"</span><span style="color: red;">1</span><span style="color: rgb(139, 0, 0);">"</span><span style="color: rgb(0, 0, 139);">unit</span><span style="color: gray;">=</span><span style="color: rgb(139, 0, 0);">"</span><span style="color: red;">minute</span><span style="color: rgb(139, 0, 0);">"</span><span style="color: olive;">&gt;</span><span style="color: gray;"><br />    <span class="Apple-converted-space"> </span></span><span style="color: olive;">&lt;</span><span style="color: green;">users</span><span style="color: rgb(0, 0, 139);">interarrival</span><span style="color: gray;">=</span><span style="color: rgb(139, 0, 0);">"</span><span style="color: red;">2</span><span style="color: rgb(139, 0, 0);">"</span><span style="color: rgb(0, 0, 139);">unit</span><span style="color: gray;">=</span><span style="color: rgb(139, 0, 0);">"</span><span style="color: red;">second</span><span style="color: rgb(139, 0, 0);">"</span><span style="color: olive;">&gt;&lt;/</span><span style="color: green;">users</span><span style="color: olive;">&gt;</span><span style="color: gray;"><br />  <span class="Apple-converted-space"> </span></span><span style="color: olive;">&lt;/</span><span style="color: green;">arrivalphase</span><span style="color: olive;">&gt;</span><span style="color: gray;"><br /> <span class="Apple-converted-space"> </span></span><span style="color: olive;">&lt;/</span><span style="color: green;">load</span><span style="color: olive;">&gt;</span><span style="color: gray;"><br /> <span class="Apple-converted-space"> </span></span><span style="color: rgb(255, 165, 0);">&lt;!-- 第1阶段1分钟(你可以自己多搞几个阶段)，其中每2秒新建一个用户，每个用户都会完整执行 session 的测试脚本，最高并发约为 30 个，个人认为这个“逐渐加压”的方法比 ab xxxx 的“突然加压”要慢一些，但更科学一点 --&gt;</span></div></div><p style="margin: 0px 0px 14px;"><strong>运行</strong></p><p style="margin: 0px 0px 14px;">准备好了，加压运行。</p><div><div>tsung start</div></div><p style="margin: 0px 0px 14px;">运行完，在 ~/.tsung/log 目录会生成一个以时间命名的目录，进入这个目录</p><div><div>cd ~/.tsung/log/xxxxx<br />/usr/lib/tsung/bin/tsung_stats.pl （有时可能是 /usr/local/lib/tsung/bin/tsung_stats.pl)<br /></div></div><p style="margin: 0px 0px 14px;">生成 html 的压力测试报告</p><div><div>firefox report.html</div></div>除了 http 以外 tsung 还可以压很多东西，比如：jabber, postgreSQL 还可以写插件来给任何你想要测试的东西加压.</span>
		</span>
<img src ="http://www.blogjava.net/duanzhimin528/aggbug/330582.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/duanzhimin528/" target="_blank">DZM.528</a> 2010-09-01 15:23 <a href="http://www.blogjava.net/duanzhimin528/archive/2010/09/01/330582.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Jmeter测试结果分析</title><link>http://www.blogjava.net/duanzhimin528/archive/2010/01/07/308524.html</link><dc:creator>DZM.528</dc:creator><author>DZM.528</author><pubDate>Thu, 07 Jan 2010 03:31:00 GMT</pubDate><guid>http://www.blogjava.net/duanzhimin528/archive/2010/01/07/308524.html</guid><wfw:comment>http://www.blogjava.net/duanzhimin528/comments/308524.html</wfw:comment><comments>http://www.blogjava.net/duanzhimin528/archive/2010/01/07/308524.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/duanzhimin528/comments/commentRss/308524.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/duanzhimin528/services/trackbacks/308524.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: Jmeter测试结果分析这一篇主要讲述如何使用jmeter中Assertion对结果进行简单的分类，以及当我们拿到测试结果后，我们应该如何去看待这些测试结果。&nbsp;&nbsp;<a href='http://www.blogjava.net/duanzhimin528/archive/2010/01/07/308524.html'>阅读全文</a><img src ="http://www.blogjava.net/duanzhimin528/aggbug/308524.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/duanzhimin528/" target="_blank">DZM.528</a> 2010-01-07 11:31 <a href="http://www.blogjava.net/duanzhimin528/archive/2010/01/07/308524.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>