即時通訊之xmpp協議簡析

2021-08-01 20:25:16 字數 899 閱讀 4242

最近的專案用到了阿里百川即時通訊雲。按照官網的demo以及官方開發文件整合和開發的過程還是相當的順利的。因此,今天在這裡我並不打算贅述開發過程,而是簡單談一下自己對於即時通訊的原理的理解。

目前im有四種協議:即時資訊和空間協議(impp)、空間和即時資訊協議(prim)、針對即時通訊和空間平衡擴充的程序開始協議sip(******)以及xmpp。prim與xmpp、******類似,但已經不再使用了。

在這裡,我們來深入的了解一下xmpp協議。

首先,我們下來理解一下xmpp協議是什麼?

xmpp是一種基於xml的協議,即用tcp協議來傳遞xml資料流。

那麼問題來了,為什麼事tcp而不是http協議呢?

個人理解:即時通訊,顧名思義資訊的交換是實時的,因此需要在通訊雙方之間建立一條長連線,而http協議是一種無狀態的連線,資料一次交換完之後連線就斷開了。這顯然與即時通訊的思想史相悖的。

接下來,我們聊一下xmpp的基本網路結構是什麼樣的。

xmpp的工作原理:

所有從乙個xmpp client到另乙個xmpp client的資料都要通過xml server。即client 連線到server,server通過本地目錄的證書對其進行認證。client告知server另乙個client的目標位址,server返回對應client的當前狀態,並查詢client並建立連線,之後client之間就可以互動了。

題目大概是這樣的,有幾十個gb的xml資料,需要將其解析出來,並將相應節點的資料儲存到資料庫中,請你設計一種思路,使得效率最高。(強調效率)

基於XMPP協議的即時通訊

最近公司的專案需要用到即時通訊技術,就花了一點時間對即時通訊技術進行研究。經過調研發現,通過openfire spark smack就可以實現。廢話不多說,下面我們就來講一下具體的實現。1.什麼叫openfire?openfire是乙個即時通訊伺服器,也稱之為即時通訊平台。它是基於xmpp協議的,大...

xmpp即時通訊詳解

摘要 此文件定義了可擴充套件訊息出席協議 xmpp 的核心特性 協議使用xml元素在任意兩個網路端點間近實時的交換結構化資訊。當xmpp為交換xml資料提供一般化,可擴充套件的框架時,它主要用於建立滿足rfc2779的即時訊息與出席應用的需求。1 介紹 1.1 概要 xmpp是乙個開放的可擴充套件標...

即時通訊協議相關

xmpp是目前主流的四種im協議之一,其他三種分別為 即時資訊和空間協議 impp 空間和即時資訊協議 prim 針對即時通訊和空間平衡擴充的程序開始協議sip 在這四種協議中,xmpp是最靈活的。xmpp是一種基於xml的協議,它繼承了在xml環境中靈活的發展性。因此,基於xmpp的應用具有超強的...