2011-06-27 114 views
3

我在WebSphere MQ兩個非常基本的問題 - 因爲我一直有種給藥它過去的幾個月裏,我傾向於認爲這些都是無聊的問題傻的WebSphere MQ問題

  1. 是否有辦法「去激活」一個 隊列? (例如,通過 runmqsc命令或通過 Explorer界面) - 我認爲不是。我想我能做的只是刪除 吧。

  2. 如果我創建了一個 遠程隊列定義,如果真正的 遠程隊列不在位,會發生什麼?將 它會導致隊列 管理器上的任何問題? - 我想不是。我想所有的 我都會在 的日誌裏有錯誤信息。

請讓我知道您的想法。 謝謝!

+0

如何接受,投票,然後對評論投票呢? –

回答

2

1有沒有辦法「停用」 隊列?

是的。您可以更改隊列屬性,像這樣:
ALTER Q(QUEUE_NAME) PUT(DISABLED) GET(DISABLED)

任何連接的應用程序將獲得下一個API調用告訴他們返回代碼隊列不再爲PUT/GET。如果這些行爲良好的程序,他們會報告錯誤並結束或進入重試循環。

2,如果我創建了一個 遠程隊列定義如果真正 遠程隊列不到位,會發生什麼?

QRemote定義將解析爲傳輸隊列。如果消息可以成功放置,則應用程序將收到返回碼爲零的消息。 (任何不成功的PUT將由於打MAXDEPTH或其他本地問題未與遠程定義不存在的事實連接)

當通道嘗試傳遞消息時,問題將會顯示。如果遠程QMgr具有死信隊列,則消息將會到達那裏。如果沒有,它將被退出到本地XMitQ並且通道將停止。