Sun Java System Instant Messaging 7.2 管理指南

配置 Instant Messaging XMPP/HTTP 閘道

當您在安裝後執行 configure 公用程式時,可以選擇是否部署 XMPP/HTTP 閘道。如果已啟用,則 configure 公用程式會為閘道建立預設的配置檔案 (httpbind.conf)。您可以透過修改此檔案中的值來變更配置。如需 httpbind.conf 檔案語法、檔案位置和此檔案中配置參數的說明,請參閱附錄 Bhttpbind.conf 中的 Instant Messaging XMPP/HTTP 閘道配置參數,或是參閱本節中的說明。

此外,當您選擇在初始配置期間部署閘道時,configure 公用程式會在 im-svr-base/work 目錄中建立 .war 檔案,然後在您為程式碼庫指定的目錄中的 Web 或應用程式伺服器上部署此檔案。

您也可以透過修改 web.xml (以用戶端資源部署在 Web 容器上) 中的值,來配置閘道以使用非預設配置檔案。

本節中的說明假設閘道配置檔案為 httpbind.conf。如果您使用非預設配置檔案,請用您的配置檔案替代說明中的 httpbind.conf

每次變更 httpbind.conf 後,您都需要重新啟動 XMPP/HTTP 閘道。

本節包含以下說明:

如需配置閘道記錄的說明,請參閱管理 XMPP/HTTP 閘道記錄

Procedure啟用或停用 Instant Messaging XMPP/HTTP 閘道

若要啟用閘道,請執行 configure 公用程式,並設定 iim.conf 中的參數。您稍後可使用 Web 容器或應用程式伺服器提供的工具停用閘道。

  1. 啟用閘道:

    1. 執行 configure 公用程式。

    2. 當出現提示時選擇部署閘道。

      如需詳細資訊,請參閱第 1 章, 安裝後配置 Instant Messaging

    3. iim.conf 中,將 iim_agent.httpbind.enable 參數設定為 true。

      例如:


      iim_agent.httpbind.enable=true
  2. 若要停用閘道,請使用 Web 或應用程式伺服器提供的工具停用 webapp。

Procedure配置 XMPP/HTTP 閘道處理的同步運作請求數

開始之前

確定您熟悉 JEP 124 標準草案。如需詳細資訊,可從 http://www.jabber.org/jeps/jep-0124.html 獲得。

  1. 開啟 httpbind.conf

    如需尋找此檔案的詳細資訊,請參閱 httpbind.conf 檔案位置

  2. httpbind.requests 參數設定為單一用戶端可傳送給閘道的同步運作請求最大數。

    預設值為 2。例如:


    httpbind.requests=2

    用戶端可向閘道發出的同步運作請求數。如果此參數的值小於用戶端請求的 JEP 124 hold 屬性值,此參數值將設定為 hold+1。不要將此參數設定為 1,因為這麼做會嚴重降低效能。如需 httpbind.hold 參數的詳細資訊,請參閱設定 XMPP/HTTP 閘道用戶端請求的 JEP 124 hold 屬性表 B–1

  3. 儲存並關閉 httpbind.conf

  4. 使用 Web 或應用程式伺服器提供的工具重新啟動閘道。

Procedure設定 XMPP/HTTP 閘道用戶端請求的 JEP 124 hold 屬性

開始之前

確定您熟悉 JEP 124 標準草案。如需詳細資訊,可從 http://www.jabber.org/jeps/jep-0124.html 獲得。

  1. 開啟 httpbind.conf

    如需尋找此檔案的詳細資訊,請參閱 httpbind.conf 檔案位置

  2. httpbind.hold 參數設定為您要閘道允許用戶端請求中 hold 屬性的最大值。

    預設值為 5。例如:


    httpbind.hold=5

    如果用戶端傳出的 hold 值大於閘道的 hold 值,則使用閘道的 hold 值。

  3. 儲存並關閉 httpbind.conf

  4. 使用 Web 或應用程式伺服器提供的工具重新啟動閘道。

Procedure指定 XMPP/HTTP 閘道所允許的用戶端不活動時間

  1. 開啟 httpbind.conf

    如需尋找此檔案的詳細資訊,請參閱 httpbind.conf 檔案位置

  2. httpbind.inactivity 參數設定為您要閘道終止閒置連線所經過的時間 (單位為秒)。

    預設值為 180 秒。例如:


    httpbind.inactivity=180

    如果用戶端在此時間內並未輪詢閘道,則閘道會終止連線。

  3. 儲存並關閉 httpbind.conf

  4. 使用 Web 或應用程式伺服器提供的工具重新啟動閘道。

Procedure設定 XMPP/HTTP 閘道的內容類型 HTTP 標頭

  1. 開啟 httpbind.conf

    如需尋找此檔案的詳細資訊,請參閱 httpbind.conf 檔案位置

  2. 如果用戶端在其初始請求中未指定內容類型,將 httpbind.content_type 參數設定為您要閘道使用的內容類型。

    預設值為 text/xml; charset=utf-8。例如:


    httpbind.content_type=text/xml; charset=utf-8
  3. 儲存並關閉 httpbind.conf

  4. 使用 Web 或應用程式伺服器提供的工具重新啟動閘道。

Procedure設定 XMPP/HTTP 閘道的往返時間延遲

往返時間延遲是一段以秒為單位的時間,也就是在閘道和用戶端之間往返逾時之外所允許的額外時間。這有助於說明網路延時。

  1. 開啟 httpbind.conf

    如需尋找此檔案的詳細資訊,請參閱 httpbind.conf 檔案位置

  2. 視需要設定 httpbind.round_trip_delay 參數。

    此值設定過高會降低效能。此值的單位為秒。預設值為 1 秒。例如:


    httpbind.round_trip_delay=1

    此值設定過高會降低效能。先考量您的一般網路延時,再變更此參數。

  3. 儲存並關閉 httpbind.conf

  4. 使用 Web 或應用程式伺服器提供的工具重新啟動閘道。

Procedure設定 XMPP/HTTP 閘道將回應傳送給用戶端的預設時間

  1. 開啟 httpbind.conf

    如需尋找此檔案的詳細資訊,請參閱 httpbind.conf 檔案位置

  2. 視需要設定 httpbind.wait_time 參數。

    保證用戶端會在您以此參數設定的時間內得到 XMPP/HTTP 閘道回應。在設定此參數時,請考量您的網路速度。請勿將此值設定過低,否則 XMPP/HTTP 閘道不可能及時傳送請求。

    此值的單位為秒。預設值為 120 秒。例如:


    httpbind.wait_time=120

    如果為此用戶端設定的值大於閘道的值,則會使用閘道等待時間。

  3. 儲存並關閉 httpbind.conf

  4. 使用 Web 或應用程式伺服器提供的工具重新啟動閘道。

Procedure配置 Instant Messaging 閘道池中的 XMPP/HTTP 閘道

  1. 開啟 httpbind.conf

    如需尋找此檔案的詳細資訊,請參閱 httpbind.conf 檔案位置

  2. 將閘道配置為具有 Instant Messaging 閘道池之部署的一部分:

    1. httpbind.pool.support 參數設定為 true


      httpbind.pool.support=true
    2. httpbind.pool.nodeId 參數設定為完整的閘道 URL。

      URL 會做為閘道的 nodeId。此 nodeId 在伺服器池中必須唯一。閘道使用此 nodeId 來判定它是否必須為收到的請求服務,或將請求轉送到池中的另一個閘道。

  3. 若要將閘道配置為不在閘道池中運作,請將 httpbind.pool.support 參數設定如下:


    httpbind.pool.support=false
  4. 儲存並關閉 httpbind.conf

  5. 使用 Web 或應用程式伺服器提供的工具重新啟動閘道。

Procedure配置所支援 XMPP/HTTP 閘道網域的金鑰 ID 清單

  1. 開啟 httpbind.conf

    如需尋找此檔案的詳細資訊,請參閱 httpbind.conf 檔案位置

  2. httpbind.config 參數設為您要閘道使用的 ID 清單。

    對於每個網域,您需要為此參數指定不同的 ID。例如:


    httpbind.config=gwdomain-id
    

    其中,gwdomain-id 是您要為網域使用的識別碼。

    例如:


    httpbind.config=siroe.com
  3. 對於每個您指定的 gwdomain-id,將以下參數新增至 httpbind.conf 檔案:


    gwdomain-id.domain=domain-name
    gwdomain-id.hosts=gateway-host
    gwdomain-id.componentjid=component-jid
    gwdomain-id.password=password
    

    其中:

    • gwdomain-id 是為上一個步驟中的 httpbind.config 內的閘道所指定的 ID。

    • domain-name 是識別的閘道在其中執行的網域。

    • gateway-host 是完全合格網域名稱 (FQDN) 以及支援此網域的閘道主機連接埠號碼清單,以逗號或空格分隔。

    • component-jid 是閘道的元件 JID。

    • password 是識別的閘道的密碼。

    例如,如果將 gwdomain-id 設為 siroe


    siroe.domain=siroe.com
    siroe.hosts=gateway.siroe.com:5222
    siroe.componentjid=http.gateway.siroe.com
    siroe.password=gatewaypassword

    如需這些關鍵參數的詳細資訊,請參閱httpbind.config 的閘道網域 ID 鍵值參數

  4. 儲存並關閉 httpbind.conf

  5. 使用 Web 或應用程式伺服器提供的工具重新啟動閘道。

Procedure配置 Instant Messaging XMPP/HTTP 閘道以使用非預設配置檔案

  1. 在部署 Instant Messenger 資源檔案的 Web 容器上,編輯 web.xml

    使用您的 Web 容器工具編輯此檔案。

  2. httpbind.config.file 參數的值變更為您要閘道使用的配置檔案位置。