BizTalk应用程序的性能测试和分析是一个非常重要的过程,因为BizTalk的应用程序在Run-time时受部署结构、消息请求数量和消息大小等 的影响很大,因此无论是简单还是复杂的的应用都需要在部署到生产环境之前执行这一过程。 一般在性能测试中通过Windowns系统自带的性能能监视器来采集相关的数据, 并根据这些计数器的值来判断应用程序的性能瓶颈和负载大小。

虽然Windows性能监视器大家应该不陌生了,但是如果使用方法不正确的话不仅可能得不到你要的数据,还有可能使你白白做了测试。接下来将主要探讨一下windows性能监视工具在BizTalk性能测试中的使用。

Windows2008的可靠性和性能监视器在数据报告、数据集管理等方面提供了更加人性化的功能(如下图)。本演示基于性能监视器并分为三部分:采集数据、查看数据和分析数据。

创建数据收集器集采集数据

1.在数据收集器集(Data Collector Sets) –> 用户自定义(User Defined) 中点击新建数据收集器集

2.手动创建数据收集器集

3. 在数据集中希望采集的数据类型

4. 添加相应的计数器,由于不同的性能比较需要不同的数据因此建议选择相应实例下的所有计数器。

6.在“您希望记录哪个注册表项”中不记录任何注册表项

7.在保存位置中选择默认的位置

8.在“是否创建数据收集器集”中选择保存并关闭

9.启用生成报告功能,右击新建的数据收集器BTS_Demo.选择数据管理器(Data Manager),在数据管理中“启用数据管理和报告生成”。这一步很重要,如果不启用这一项的话将无法使用数据收集器的最新报告功能。

10.OK,数据收集器集已经创建完成了。在对BizTalk进行性能测试前启用新建的数据收集器BTS_Demo。

查看性能数据

查看当前性能数据 通过在性能监视器的查看当前活动界面可以实时的查看计数器变化。在使用前要按需要添加相应的计数器。

查看性能日志数据 在性能监视器窗口中点击查看日志数据,在弹出的窗口中选择跟踪的日志文件位置和时间范围。通过查看日志数据可以查看到整个测试过程中的数据变化。

查看性能报告和分析

对于测试数据一般比较关注一些最大值、最小值、平均值、测试时间、系统配置等信息,通过之前创建的数据收集器,只需要直接点击数据收集器的最新报告功能。就可以在报告中查看到生成的跟踪报告。从以下的报告中我们可以看到各计数器的数值统计信息。

PAL分析工具

PAL是Codeplex上的性能分析工具,提供多种应用系统的日志分析模板也可以通过自定义的方式来创建模板。

在PAL中指定要被分析的日志文件和分析模板之后,PAL将生成HTML类型的报告对性每种计数器对像都有详细的统计信息,如果一些数值如果超过了常规的范围的话还会有颜色提醒。不过可惜该工具还不支持中文。

其他使用技巧

1.保存计数器

在性能查看器的窗口的计数器列表中全先,右击选择“将设置另存为”。即可将设置保存成HTML。在使用时只要将此HTML拖拽到计数器列表中即可。

2.保存数据收集器集设置

在数据收集器中右击保存模板,即可保存数据收集器集。使用时选择使用模板创建数据收集器集。

总结

通过以上的演示基本上讲述了性能监视器在BizTalk性能测试时的使用方法,在实际使用时为了使跟踪数据满足不同的性能比较在添加计数器时适当的多添加些计数器。

BizTalk开发系列(三十七) 性能监视器在BizTalk性能测试中的使用的更多相关文章

  1. BizTalk开发系列(三十二)浅谈BizTalk主机性能优化

    很多BizTalk的项目都要考虑到性能优化的问题,虽然BizTalk采用多线程处理消息的,大大提高了程序效率.但默认情况下 BizTalk的主机有很多阻止参数会控制BizTalk对服务器的资源使用率, ...

  2. BizTalk开发系列(三) 单机环境下的BizTalk Server 2006 R2安装

    大部分的开发环境都是在单机环境下进行的,今天整理了一下BizTalk Server 2006 R2在单机环境下的安装步骤. 1. 软件需求 在独立服务器中完整安装BizTalk Server 2006 ...

  3. BizTalk开发系列(三十三)BizTalk之Excel终极解决方案

    Excel作为优秀的客户端数据处理程序得到了广泛的应用. 由于其简单又强大的功能在很多公司或个人的数据处理中占用非常重要的位置. 而BizTalk作为微软的SOA主打产品虽然免费提供了很多Adapte ...

  4. BizTalk开发系列(三十八)微软BizTalk Server定价和许可[解读]

    做BizTalk的项目一段时间了,但是对BizTalk的价格和许可还不是很了解.给客户设计解决方案时大部分产品都是直接按照企业版的功能来设计,很 少考虑到价格和许可方面的因素,以为这个不是我们的事情或 ...

  5. BizTalk 开发系列(三十九) BizTalk Server 2009技术概览

    BizTalk Server 2009已经发布一段时间了,之前Beta版发布的时候也写过一篇文章<BizTalk Server 2009 Beta初体验>, 当时比较了2006 R2与20 ...

  6. BizTalk开发系列(三十)单向端口实现请求-响应

    BizTalk本质上是异步的消息处理引擎.BizTalk的请求与响应模式是基于异步之上的同步消息交换.消息引擎通过消息的扩展架构链接许 多异步消息,消息的相关集关联请求与响应消息.例如,客户端发送一个 ...

  7. BizTalk开发系列(三十五) TCP/IP 适配器

    BizTalk 的TCP/IP适配器最初是为英国的保健行业开发.该适配器属于BizTalk进程内适配器,将消息通过TCP/IP 套接字符串在BizTalk服务器与远程客户端间进行通讯. TCP/IP适 ...

  8. BizTalk开发系列(三十四) Xpath

    XPath 是在 XML 文档中查找信息的语言,在BizTalk的开发中应用非常广泛,当然你可以不必先学Xpath再去学BizTalk.但是如果对Xpath有一定了解的 话,在很多应用下会使你的开发更 ...

  9. BizTalk开发系列(三十六) Orchestration单实例执行

    BizTalk 是高效的消息处理引擎,采用多线程并发的方式来处理消息.也就是说当有消息被接收的时候就会产生一个新的消息处理实例.但有时目标系统可能并没有并发处理 的能力, 这时就需要在BizTalk中 ...

随机推荐

  1. WebGL框架 -- three.js

    http://segmentfault.com/a/1190000002421007 http://www.cnblogs.com/shawn-xie/archive/2012/08/16/26425 ...

  2. 【CLR in c#】事件

    1.事件模型建立在委托的基础上. 2,定义事件编译器会做三个动作,第一个构造具有委托类型的字段,事件发生时会通知这个列表中的委托. 第二个构造的是一个添加关注的方法+=.  第三个构造是一个注销事件关 ...

  3. jQuery跨域

    其实jQuery跨域很简单很简单,你记住格式就好,跨域的原理请参考 <jsonp跨域> jQuery跨域代码: $.ajax({ url:'https://suggest.taobao.c ...

  4. iOS UITextField的returnkey点击事件

      关于隐藏软键盘,网上的办法良莠不齐,大多是通过实现UITextFieldDelegate来隐藏软键盘,该方法代码较多,且在文本框很多的时不好处理.我经过搜索与摸索,找到了最佳的处理办法.(引用的) ...

  5. HDU4888 Redraw Beautiful Drawings(最大流唯一性判定:残量网络删边判环)

    题目 Source http://acm.hdu.edu.cn/showproblem.php?pid=4888 Description Alice and Bob are playing toget ...

  6. My97DatePicker控件

    本文只做了功能说明,详细请看http://www.my97.net/dp/demo/index.htm 二. 功能及示例 1. 常规功能 支持多种调用模式 除了支持常规在input单击或获得焦点调用外 ...

  7. BZOJ4116 : [Wf2015]Tours

    将边集划分成若干极大不相交集合,满足每个简单环都可以由某些集合相加得到,则答案就是这些集合大小的$\gcd$的约数. 对于一个简单环,上面的边一定不是桥边,而和它在一个集合的边肯定不在其他简单环上.因 ...

  8. div+css定位position详解

    div+css定位position详解 1.div+css中的定位position 最主要的两个属性:属性 absolute(绝对定位) relative(相对定位),有他们才造就了div+css布局 ...

  9. HDU 3069 (树形DP)

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=3069 题目大意:用最少警力,监控一个树,逮住逃犯.即最大警力去一个子树捉人时,确保父点至少被一个警察 ...

  10. Sphinx 实时索引

    index rt { type = rt rt_mem_limit = 512M path = /usr/local/sphinx/data/rt rt_field = title rt_field ...