我想分析单独的ESQL模块以获得IBM Integration Bus的性能,而不是PerfHarness的整个应用程序。我知道存在编写ESQL的良好实践列表(例如,这个 - ESQL code tips)
但是,它只是一个ESQL模块的性能分析工具吗?
答案 0 :(得分:2)
您可以通过Broker“ Web用户界面”进行检查。只需打开流(使用ESQL代码)统计信息,它就会显示该流程在每个节点上花费了多少时间。
答案 1 :(得分:1)
我知道这已经很老了,但它仍然涵盖了基础知识。 https://www.ibm.com/developerworks/websphere/library/techarticles/0406_dunn/0406_dunn.html关于"使用会计和统计信息隔离问题"应该回答你的问题。使用跟踪的部分应该可以帮助您分析ESQL模块中的语句。
在调试级别生成的跟踪文件显示每个语句执行的时间长度精确到微秒,帮助您找到有问题的语句或循环。
要获取跟踪文件,请执行以下操作
步骤:1 - 使用以下命令启动用户跟踪
mqsichangetrace <Node> -u -e <Server> -f <MessageFlowName> -l debug -r
步骤:2 - 通过消息流发送消息。
步骤:3 - 使用以下MQSI命令停止跟踪
mqsichangetrace <Node> -u -e <Server> -f "<Message Flow Name>" -l none
步骤:4 - 将跟踪内容读入文件:
mqsireadlog <Node> -u -e <Server> -f -o flowtrace.xml
步骤:5 - 将XML跟踪文件格式化为用户可读格式。
mqsiformatlog -i flowtrace.xml -o flowtrace.txt
检查文本文件。
答案 2 :(得分:0)
我还没有看到用于分析单独的ESQL模块的特殊工具。 但您可以将SoapUI与HermesJMS一起使用以连接到MQ队列。 然后,您可以为每个ESQL模块创建单独的流。 您可以使用SoapUI负载测试的所有功能来测试ESQL模块的性能。 您可以托盘任何提示(参考,周期类型等)并比较它的性能。