[z/OS]

z/OS 上的 ALTER BUFFPOOL (改变缓冲池设置)

使用 MQSC 命令 ALTER BUFFPOOL 动态更改 z/OS®上预定义缓冲池的设置。

z/OS 上使用 MQSC 命令

有关如何在 z/OS上使用 MQSC 命令的信息,请参阅 可在 IBM® MQ for z/OS上发出 MQSC 和 PCF 命令的源

ALTER BUFFPOOL 命令中未指定的参数会导致这些参数的现有值保持不变。

您可以从源 2CR 发出此命令。 有关源符号的说明,请参阅 可在 IBM MQ for z/OS上发出 MQSC 和 PCF 命令的源。

ALTER BUFFPOOL 的语法图

同义词: ALT BP

ALTER BUFFPOOL

读取语法图跳过可视语法图 ALTER BUFFPOOL ( buf-pool-id ) BUFFERS(整数)LOC(BELOW)LOCATION(ABOVE)PAGECLAS(4KB)PAGECLAS(FIXED4KB)

ALTER BUFFPOOL 的使用说明

  1. 根据值是否大于或小于当前分配 (可通过 DISPLAY USAGE 命令显示) ,添加或除去缓冲区。
  2. 如果没有足够的存储空间,那么将添加由 PAGECLAS 属性指定的类型,以添加请求的数字。
  3. 该命令以异步方式运行。 命令完成时,会将消息 CSQP023I 发送到控制台。
  4. 无法从 CSQINPT 发出 ALTER BUFFPOOL
  5. 如果使用 ALTER BUFFPOOL 命令对缓冲池进行了更改,特别是在大量减少了缓冲池的情况下,那么应尽快重新启动队列管理器,以清除缓冲池大小更改所导致的任何存储分段。

    未能重新启动队列管理器可能会导致您接收到以下错误代码 ABEND878-10 - Virtual private region depleted,原因是 IBM MQ MSTR 地址空间中的区域存储器分段。

  6. ALTER BUFFPOOL 命令不能从 CSQINP1 DD 连接中发出。 如果需要在队列管理器启动时应用更改,请使用 CSQINP1 文件中的 DEFINE BUFFPOOL 命令,而不是 ALTER BUFFPOOL

ALTER BUFFPOOL 的参数描述

(buf-pool-id)
缓冲池标识。
此参数是 0 到 99 范围内的整数。
BUFFERS(整数)
此参数是可选的,是要在此缓冲池中使用的 4096 字节缓冲区的数目。
如果 LOCATION 参数值为 BELOW ,缓冲区的最小值为 100,最大值为 500,000。 如果 LOCATION 参数值为 ABOVE ,则有效值范围为 100 至 999999999(9 个 9)。 用于具有 LOCATION ABOVE 的缓冲池中的缓冲区的存储器以 4MB的倍数获取。 因此,指定 BUFFERS 值 (是 1024 的倍数) 将最有效地使用存储器。
请参阅 缓冲区和缓冲池 ,以获取有关可以在每个缓冲池中定义的缓冲区数的指导信息。
在定义缓冲池时,应注意确保在界线上方或下方有足够的可用存储空间。 有关更多信息,请参阅 地址空间存储器
注: 根据缓冲池大小和机器配置,创建大型缓冲池可能需要几分钟时间。 在某些情况下,可能会输出消息 CSQP061I
LOCATION 或 ( 或 ) LOCBELOW ABOVE
LOCATIONLOC 是同义词,但不能同时使用这两者。
LOCATIONLOC 参数指定指定缓冲池所使用的内存所在的位置。
[不推荐]请注意:IBM MQ 9.1 开始, LOCATION(BELOW) 已被弃用,您只能使用 LOCATION(ABOVE)
该内存位置可以是 ABOVE (64 位)或 BELOW (31 位),默认为 BELOW
更改缓冲池时,应注意确保在增加缓冲区数或更改 LOCATION 值时有足够的可用存储空间。 切换缓冲池的位置可能是 CPU 和 I/O 密集型任务。 当队列管理器未大量使用时,应执行此任务。
有关更多信息,请参阅 地址空间存储器
PAGECLAS( 4KBFIXED4KB )
可选参数,用于描述用于支持缓冲池中的缓冲区的虚拟存储器页面的类型。
此属性适用于缓冲池中的所有缓冲区,包括稍后由于使用 ALTER BUFFPOOL 命令而添加的任何缓冲区。 默认值为 4KB ,这意味着使用可分页的 4KB 页面来备份池中的缓冲区。
4KB 是缓冲池位置属性设置为 时唯一有效的值。 BELOW 如果缓冲池的 LOCATION 属性设置为 ABOVE ,也可以指定 FIXED4KB 。 这意味着,固定的 4KB 页面将用于支持缓冲池中的缓冲区,这些页面永久保存在实际存储区中,永远不会被分页到辅助存储区。
缓冲池的 PAGECLAS 属性可以随时更改。 但是,仅当缓冲池将位置从条形上方切换到条形下方或以其他方式切换时,才会发生更改。 否则,该值将存储在队列管理器的日志中,并在队列管理器下次重新启动时应用。
可以通过发出 DISPLAY USAGE PSID(*) 命令来检查 PAGECLAS 的当前值。 执行此操作还会导致输出 CSQP062I 消息 (如果 PAGECLAS 的当前值与队列管理器日志中的值不同)。 例如:
  • 缓冲池 7 当前已指定 LOCATION(ABOVE)PAGECLAS(4KB) 。 如果指定了 ALTER BUFFPOOL(7) PAGECLAS(FIXED4KB) ,那么可分页的 4KB 页面将继续支持缓冲池,因为 LOCATION 尚未更改。
  • 缓冲池 8 当前已指定 LOCATION(BELOW)PAGECLAS(4KB) 。 如果指定了 ALTER BUFFPOOL(8) LOCATION(ABOVE) PAGECLAS(FIXED4KB) ,那么缓冲池将移至条形上方,并且其缓冲区由固定 4KB 页 (如果有) 支持。
当您指定 PAGECLAS(FIXED4KB) 时,整个缓冲池将由页固定的 4KB 页支持,因此请确保 LPAR 上有足够的可用实存储器。 否则,队列管理器可能不会启动,或者其他地址空间可能会受到影响; 有关更多信息,请参阅 地址空间存储器
有关何时使用 PAGECLAS 属性的 FIXED4KB 值的建议,请参见 IBM MQ Support Pac MP16: IBM MQ for z/OS - 容量规划和调整