假設簡單的人物模型一樣是更好地擁有整個對象的一個觀察員或它的幾個孩子
character: {
gold: 1000,
health: 100,
mana: 50
}
客戶將認購火力聽在gold
,health
和mana
變化。在數據使用/ Firebase定價/性能方面,建議採用什麼方式來執行此操作?
我是否應訂閱character
中的更改或每個值有3個訂閱者?
假設簡單的人物模型一樣是更好地擁有整個對象的一個觀察員或它的幾個孩子
character: {
gold: 1000,
health: 100,
mana: 50
}
客戶將認購火力聽在gold
,health
和mana
變化。在數據使用/ Firebase定價/性能方面,建議採用什麼方式來執行此操作?
我是否應訂閱character
中的更改或每個值有3個訂閱者?
如果所有數據(黃金,健康,法力)都以同樣的方式不斷變化,那麼您可以訂閱字符節點中的更改。如果這三個中只有一個不斷變化,那麼您只能爲每個特定的孩子添加一個監聽器。在這種情況下,如果只有一個值不斷變化,則不需要下載整個對象。
即使你使用一個或三個聽衆,不要忘了按照這樣的活動生命週期刪除監聽器:
databaseReference.removeEventListener(valueEventListener);
當然,弗蘭克recomended,用於做一些tests測量帶寬。
希望它有幫助。
添加大量偵聽器並不算糟糕,因爲Firebase可以輕鬆處理大量偵聽器。 –
我建議測量使用的帶寬https://firebase.google.com/docs/database/usage/profile –