0

即時通訊我正在開發一個網站,並使用Spring MVC和我有理解不同的協議和工具,使即時通訊(如在網站Facebook的消息或WhatsApp的即時通知)中的問題移動應用程序。除了在項目中聊天之外,還有一項功能是讓用戶發送請求並等待其他用戶做出響應並立即通知他們)。的應用

但是我失敗的事業有人說使用GCM或FCM的移動和其他人說,有其他協議,如STOMP和AQMP和其他一些人。我不知道要在rest api中查看和使用哪些內容,以便在考慮性能和其他問題的同時適用於瀏覽器和移動設備,以及如何從客戶端使用這些消息(我的意思是消費方法取決於選擇協議?)。我應該使用基於請求源的多種協議和工具(即,如果移動設備和Android - > GCM或FCM,例如瀏覽器STOMP,如果iOS - >不知道使用什麼)。

我知道它看起來像一個普通的問題,但我真的得到了專門失去了,我不知道什麼是選擇,這些天開始用正確的事情。

回答

0

消息堆棧由多個組件組成。其中之一是消息傳輸 - 用於在服務器和客戶端之間傳遞消息。 FCM/GCM/APNS在這方面是傳輸協議。

GCM已棄用,以支持FCM。 FCM將爲Android,iOS的最新版本甚至某些瀏覽器工作。但是,如果用戶禁用了應用程序的通知,則消息將停止工作。推送通知還存在一些不可預知的延遲,特別是如果您想發送像輸入通知一樣的大量消息。

消息格式是堆棧的另一個組件。例如,STOMP是消息格式協議。它被定義用於任何串行傳輸,即可以通過FCM或TCP或websocket使用。

鑑於你問它看起來完全不切實際給你寫你自己的消息堆棧的問題。只需從貨架上挑選一些東西,如百萬XMPP服務器之一或像Tinode這樣的更現代的服務器。去谷歌上查詢。