MFT 代理如何将源传输槽分配给新请求
受管文件传输 (MFT) 代理包含多个源传输插槽。 每个源传输槽都包含代理当前充当其源代理的受管传输的详细信息,或者代理当前正在处理的受管调用的详细信息。
代理上的源传输槽数由代理属性 maxSourceTransfers指定,缺省值为 25。
代理还具有多个排队的传输槽。 这些插槽用于保存当前在代理的待处理任务列表上等待处理的受管传输或受管呼叫请求。 排队的传输槽数由代理属性 maxQueuedTransfers指定。 此属性的缺省值为 1000。
当代理接收到要求其充当源代理的受管传输请求或受管调用请求时,它会检查是否有空闲的源传输槽。
如果代理具有免费传输插槽,那么会将受管传输或受管调用分配给其中一个插槽,并且代理将开始处理该插槽。
如果占用了所有源传输槽,那么代理会将受管传输或受管调用分配给排队的传输槽,以便稍后可以对其进行处理。
但是,如果所有排队的传输槽已满,那么将拒绝受管传输请求,并且代理会将以下消息写入其事件日志:
BFGSS0030W: 代理程序已充当最大数目的源代理程序 文件传输操作,并且由于已排队的传输而无法对进一步的请求进行排队 已达到 <maxQueuedTransfers> 的极限。 将不会执行新的传输请求。
当受管传输或受管调用完成 (成功或由于错误) 时,将释放其源传输槽。 然后,代理将受管传输或受管调用从排队的传输槽移至自由源传输槽,并开始对其进行处理。
请参阅主题 MFT agent.properties 文件 的 高级代理属性: 传输限制 部分,以获取有关 maxSourceTransfers 和 maxQueuedTransfers 属性的更多信息。