在 Message Queue 4.0 的命令实用程序 (imqcmd) 中添加了一个新的子命令和几个命令选项,以允许管理员停止代理、在指定时间间隔后关闭代理、销毁连接或设置 Java 系统属性(例如,与连接相关的属性)。
停止代理可使其进入静默状态,以便在关闭或重新启动代理之前处理完所有消息。无法对处于停止状态的代理创建新连接。要停止代理,请输入如下命令。
imqcmd quiesce bkr -b Wolfgang:1756
要在指定的时间间隔后关闭代理,请输入如下命令。(时间间隔指定了在代理关闭之前等待的秒数。)
imqcmd shutdown bkr -b Hastings:1066 -time 90
如果指定了时间间隔,代理将记录一条消息,指出何时关闭代理。例如,
Shutting down the broker in 29 seconds (29996 milliseconds)
当代理等待关闭时,可通过以下方式影响其行为。
继续接受管理 jms 连接。
不接受任何新 jms 连接。
现有 jms 连接将继续工作。
代理无法接管增强的代理群集中的任何其他代理。
imqcmd 实用程序不会阻止,它将向代理发送关闭请求并立即返回。
要销毁连接,请输入如下命令。
imqcmd destroy cxn -n 2691475382197166336
使用 imqcmd list cxn 或 imqcmd query cxn 命令可获取连接 ID。
要使用 imqcmd 设置系统属性,请使用新的 –D 选项。它适用于设置或覆盖 JMS 连接工厂属性或与连接相关的 java 系统属性。例如:
imqcmd list svc -secure -DimqSSLIsHostTrusted=true imqcmd list svc -secure -Djavax.net.ssl.trustStore=/tmp/mytruststore -Djavax.net.ssl.trustStorePassword=mytrustword
有关 imqcmd 命令语法的完整信息,请参见《Sun GlassFish Message Queue 4.4 Administration Guide》中的第 16 章 “Command Line Reference”。