2013-09-30 55 views
0

這不是一個即時可用的解決方案的問題,包括來源,但獲得解決方案的想法/提示/提示。什麼機制用於推送消息?

假設我有一個信使。用戶A鍵入一些必須發送給用戶B的文本。當用戶B不在線時或者在用戶B可用時必須立即將其發送到用戶B時,該文本首先被髮送到中央服務器。

對於第二種情況,在移動設備上應該使用什麼機制?

1.)讓用戶B的信使打開客戶端連接到服務器,並永久接收來自那裏的數據對我來說聽起來不太合適。當連接中斷時,必須重新建立連接 - 直到下一次中斷爲止。因此建立這樣的連接可能會導致流量和消耗功率,而無需在其間傳輸任何有效載荷。

2.)讓Messenger使用ServerSocket並讓中央「服務器」連接到設備也有同樣的問題:連接可能會中斷。

所以我的問題:是否有一種機制可用於移動設備,只有在它們可用時才傳輸此類消息,並且僅在需要時才建立連接?某種自動推送通知,客戶端和服務器之間沒有永久連接?

+0

你看了關於由Android提供GCM – Prateek

回答

0

要麼 1.在客戶端和服務器之間建立持久連接。客戶端可以以預先確定的時間間隔輪詢以檢查傳入的有效負載。您可能需要優化「輪詢」的邏輯,以避免頻繁「輪詢」有效載荷

或者

  1. 服務器端可推動WAP推送時可用的消息客戶端,那麼客戶端醒來並retreive有效載荷。