X-MSG-IM-頻道狀態服務-基本實現思路

本文描述了X-MSG-IM中頻道狀態服務的基本實現思路

  • 狀態服務是其於sub/pub的, 在設計上支持一切有須要被訂閱的頻道, 核心api只有三個:api

下面分別展現standalone, cluster-域內, cluster-跨域三種部署環境下的頻道狀態訂閱流程.

  • 涉及到的系統網元:3d

    • x-msg-ap, 訪問點code

    • x-msg-im-hlr, 個體頻道歸屬位置blog

    • x-msg-channel-status, 頻道狀態服務ci

    • x-msc-msc, 域內域間消息交換中心部署

standalone

  • standalone環境下, 全部個體頻道的狀態都在其歸屬位置x-msg-im-hlr中, 由其直接提供訂閱/查詢服務.

cluster-域內

  • cluster環境下有專門的網元x-msg-channel-status提供狀態訂閱/查詢服務, 但個體頻道的狀態來源依然是其歸屬位置x-msg-im-hlr.

cluster-跨域

  • 跨域場景下, 由x-msg-channel-status向目標歸屬位置x-msg-im-hlr發起訂閱. 固然, 只有被訂閱的頻道首次出現時纔會發起跨域請求. 這樣能夠減小可觀的域間信令.

  • 彩色圖get

    • client A訂閱域外client B的狀態.

個體頻道狀態變動通知老是由其歸屬位置x-msg-im-hlr觸發

  • 下面以cluster-跨域環境爲例, 彩色圖:

    • client B lost後, 由其歸屬位置x-msg-im-hlr觸發, 經過x-msg-msc最終通知到client A.

相關文章
相關標籤/搜索