[UNIX、Linux、Windows、IBM i]

MFT 进程控制器概述

IBM® MQ Managed File Transfer (MFT) 进程控制器负责启动 MFT 代理程序,并在该进程因任何原因而结束时重新启动该进程。 每个代理进程都有一个进程控制器。

注: 进程控制器仅适用于 IBM MQ for Multiplatforms

[z/OS]IBM MQ for z/OS® 上,代理进程由自动重新启动管理器 (ARM) 重新启动。 有关此操作的更多信息,请参阅 配置 MFT 以获取 z/OS 自动重新启动管理器 (ARM)

进程控制器的工作方式

运行 fteStartAgent 命令时,它将启动该代理程序的进程控制器实例,然后该进程控制器将启动该代理程序进程。

运行 fteStopAgent 命令时,它会连接到该代理程序的进程控制器,并向其发送停止请求。 进程控制器接收请求,停止代理进程,然后关闭自身。

进程控制器监视代理进程。 如果代理进程意外停止,那么进程控制器会将其重新启动。

缺省情况下,如果代理程序进程在两分钟内停止了五次,那么进程控制器将关闭自身,并且不会再次尝试重新启动代理程序。 在此情况下,您需要使用 fteStartAgent 命令手动重新启动代理程序。

您可以通过修改以下代理程序属性来更改此行为:
  • maxRestartCount
  • maxRestartDelay
  • maxRestartInterval

如果您已将代理配置为使用 BINDINGS 传输连接到其代理队列管理器,那么进程控制器将在此队列管理器启动时创建与此队列管理器的连接。 然后,进程控制器将监视此连接。

如果由于队列管理器变得不可用而导致连接中断,那么进程控制器将停止代理程序,然后尝试定期重新建立连接。

重新连接尝试之间的时间段由代理属性 agentQMgrRetryInterval确定。 当队列管理器再次可用并且进程控制器能够连接到该队列管理器时,该进程控制器将重新启动代理进程。
注: 当代理配置为使用 CLIENT 传输连接到其代理队列管理器时,如果该代理进程与队列管理器断开连接,那么该代理进程将保持活动状态。 在此情况下,代理进程会尝试定期重新连接自身。

有关此部分中提到的四个属性的更多信息,请参阅 MFT agent.properties 文件 主题的 高级代理程序属性: 进程控制器 部分。

进程控制器日志文件

进程控制器将参考消息写入其事件日志。 这是一个名为 pceventN.log的文件,其中 N 是一个数字,可在以下目录中找到: MQ_DATA_PATH/mqft/logs/coordination_qmgr_name/agents/agent_name/logs/

每个进程控制器事件日志文件的大小以及历史文件数由代理程序属性 outputLogSizeoutputLogFiles确定。

有关本节中提到的属性的更多信息,请参阅 MFT agent.properties 文件 主题的 Advanced agent properties: Tracing and logging 部分。
注: 这些属性还用于确定代理程序日志文件 (称为 outputN.log) 以及进程控制器日志文件的大小和数量。
写入进程控制器事件日志的消息包括进程控制器的进程标识和代理进程的进程标识。 下面显示了这些消息的一些示例:

[21/06/2022 16:17:40.000 GMT Daylight Time]  00000000000049e0 
ProcessContro I BFGPC0003I: IBM MQ Managed File Transfer process controller started. 
Log files located at: C:\ProgramData\IBM\MQ\mqft\logs\QM1\agents\AGENT1.
 
[21/06/2022 16:17:55.000 GMT Daylight Time]  00000000000049e0 
ProcessContro I BFGPC0007I: IBM MQ Managed File Transfer process controller with process 
identifier 18736 started AGENT1@QM1 with process identifier 1748.

[21/06/2022 16:19:20.000 GMT Daylight Time]  00000000000049e0 
ProcessContro I BFGPC0027W: Process has ended with return code 1 and will be 
restarted to attempt to recover the problem.

[21/06/2022 16:19:20.000 GMT Daylight Time]  00000000000049e0 
ProcessContro I BFGPC0007I: IBM MQ Managed File Transfer process controller with process 
identifier 18736 started AGENT1@QM1 with process identifier 1304.

此处,与代理程序 AGENT1 关联的进程控制器正在以进程标识 18736 运行。

最初,它启动了代理进程-此进程的进程标识为 1748。

在代理程序启动后不久,进程控制器检测到它已意外停止,因此将其重新启动。 重新启动后,代理进程的进程标识为 1304。