2017-02-15 37 views
3

我正在創建一個嚴重依賴用戶與通知交互的iOS應用。當用戶與通知進行交互時,他們及其關注者將立即得到通知。Firebase雲消息傳遞 - 應用服務器擴展(同時連接)

爲此,我決定使用Firebase雲消息傳遞,因爲我已經在使用其他Firebase服務。

我的應用服務器是使用Node.js和node-xmpp-server在TypeScript中編寫的。根據the documentation,沒有FCM Java SDK,所以Node.js是合乎邏輯的選擇。

當我的服務器運行時,它會創建一個Client並偵聽來自FCM的傳入節。一些與此類似:

var Client = require('node-xmpp-client') 

var client = new Client({ 
    jid: '[email protected]', 
    password: 'password' 
}) 

client.on('online', function() { 
    console.log('online') 
}) 

client.on('stanza', function(stanza) { 
    console.log('Incoming stanza: ', stanza.toString()) 
}) 

整個服務器,只有一個Client偵聽所有傳入節形成FCM。

我有很多問題,我無法在Firebase文檔中找到。

  1. 同時段會進入我的服務器嗎?或者Firebase會確保一次只發送和處理一個?
  2. 如果同時出現節奏,會發生什麼情況?有些會迷路嗎?
  3. 我是否需要重構我的服務器以處理同時段落?如果是這樣,當我能用FCM做的所有事情是聽節時,我該怎麼做呢?

謝謝!

回答

1
  1. ,您會收到同步節
  2. 您應該對其進行處理和ACK他們
  3. 是。您需要使用多線程,例如1個線程正在接收消息,另一個(或多個線程)正在處理它們並排隊確認。如何做到這一點取決於你的圖書館/語言。
+0

謝謝!有沒有任何文件支持這個?或者這是來自你自己的經驗? – cohenadair