作为交易应用服务器, CICS 不但要保证自己的高可用性,而且要保证应用交易的高性能。
CICS 的数据
CICS 提供了两种类型的数据来记录自己的状态和交易的性能情况:统计(statistics)数据和性能(performance)数据,分别对应 SMF type 110 中的 subtype 2 和 subtype 1。
打个比方,如果一辆货车要按时把货物从仓库运送到目的地,首先要保证货车的状态良好,比如胎压、油量等各项指标要在正常范围之内;其次要掌握货物在运输过程中的状态,比如物流信息、货物到达各中间站点的时间及停留时长。
统计数据类似于上面例子中货车本身的性能信息,如胎压、油量、运货总量等,描述 CICS 内部各个资源的使用情况;性能数据描述每个执行的任务的性能信息,每个执行完成的任务都有一条记录描述任务从开始执行到结束之间的各种时间的消耗。
数据处理
SMF 数据无法直接阅读,需要使用工具将数据按要求转化成我们可以阅读的报告。
CICS 产品提供了 SMF type 110 的数据格式,产品手册有详细说明。用户可以自己编写程序输出定制的报告;CICS 产品提供的免费工具 DFHSTUP(Statistics utility program)也可以格式化统计(statistics)数据(subtype 2),而 CICS Performance Analyzer(PA)可以格式化性能(performance)数据(subtype 1),同时提供了很多报告格式,比如 List、Summary 和 Wait Analysis 等。
当然,IBM 还有其它产品可以处理 SMF 的数据,比如 Tivoli Decision Support(TDS)等。本文主要介绍 DFHSTUP 和 CICS PA。 在使用 SMF 数据前,需要将 SMF 数据从 log stream 导入 dataset,下面是一个 JCL 的例子:
和是 logstream 的名字,指向存储 SMF 数据的 dataset,里的参数指明需要的 SMF type, CICS 的性能数据是 type 110,如果只想要 CICS 的 SMF 数据,可以在这里只写。
---------前方高能预警---------
https://ibm.biz/BdZmE8
或者像我一样把手机横过来接着往下看...
使用 DFHSTUP 格式化统计(statistics)数据
下面是执行 DFHSTUP 的 JCL 例子:
DFHSTATS 指向的 dataset 就是刚才从 logstream 导出的存储 SMF 的 dataset。在 SYSIN里可以指定不同的参数,得到不同资源的数据报告。如果不指定参数,默认打印所有资源的报告,详细的参数参照产品使用手册。
DFHSTUP 输出的报告很容易阅读,下面列举了两个资源的报告:
例1. TRANSACTION MANAGER的统计报告
通过加粗字体项可以看到在运行交易的总数、活跃任务数量的峰值,和因 MXT 限制而排队的任务数量等。
总共运行的交易数是2,833,300,最大任务数的限制是100,已经达到的最大任务数是100,说明已经达到 MXT 的限制了;达到 MXT 限制的次数是1310;因 MXT 的限制而排队的任务数是 21509;说明在这个统计区间,CICS 曾经达到 MXT 的次数较多,需要系统管理员注意。
例2. STORAGE MANAGER的统计报告
通过加粗字体项可以看到统计区间存储使用的高峰,以及是否发生过存储足够的情况等。
DSA 的限制是 4608K,DSA 的使用峰值是 2560K,EDSA 的限制是 500M,EDSA 的使用峰值是 356M,没有出现存储不够的情况。
使用 CICS PA batch 格式化性能(performance)数据(subtype 1)
CICS PA 可以打印多种格式的报告,下面的两个例子输入了不同的报告参数并输出了相应的结果:
例1. CICS PA summary 报告
可以把交易按照要求进行汇总计算,该例按照交易名进行汇总计算。
参数输入:
结果输出:
从输出的结果可以看到每个交易的平均交易响应时间和CPU的使用时间等数据。
以交易 CECI 为例子,交易平均响应时间是0.5371秒,平均 dispatch 时间是0.0195秒,平均 suspend 时间是0.5176秒,平均使用 CPU 的时间是0.0042秒。
例2. CICS PA wait analysis 报告
可以把交易响应中的等待时间进行细分,把等待原因按照时间长短排序,方便找到关键因素。
参数输入:
结果输出:
从报告中可以很清楚地看到交易的响应时间主要消耗在哪些方面,比重最大的是 VSAM TS I/O 的等待时间和因为 TCB 切换造成的 redispatch 等待时间。
总之……
CICS产品提供了详细的性能数据,只要熟练使用工具分析 SMF 数据,就可以跟踪每个交易的性能情况和 CICS 本身的健康状况,把应用和 CICS 产品的性能保持在最优状态。大家如果在日常遇到的问题也可以和我们讨论,欢迎大家留言或者发邮件。
最后的最后,这波推送应该是我们清明前的最后一更了,节后见哦~
https://www.ibm.com/support/knowledgecenter/
CICS TS Performance Guide
内容声明:本文仅代表作者的个人观点,与IBM立场、策略和观点无关。文中专业名词因翻译原因,表述中难免存在差异。如有疑惑,请以英文为准。同时数据来源于实验室环境,仅供参考。如果您对我们的话题感兴趣,请给我们留言。
领取专属 10元无门槛券
私享最新 技术干货