22

雲端功能和Firebase功能看起來都一樣。Cloud Function和Firebase函數有什麼區別?

請描述每個的用例。

兩者都使用HTTP功能。

雲功能

exports.helloHttp = function helloHttp (req, res) { 
    res.send(`Hello ${req.body.name || 'World'}!`); 
}; 

,並在火力地堡功能

exports.helloWorld = functions.https.onRequest((request, response) => { 
    response.send("Hello from Firebase!"); 
}); 

是這些區別?

+1

Firebase的術語實際上是Firebase ***的雲端函數,它幾乎就是與Firebase服務集成的雲端函數。 –

+0

那麼兩者之間沒有區別? –

回答

51

沒有稱爲Firebase函數的產品。

有三種不同的東西:

  1. 谷歌的雲功能,它允許你在響應事件
  2. 雲功能的火力地堡,這將觸發基於谷歌雲功能運行在谷歌的基礎設施的JavaScript代碼段關於Firebase中的事件(例如數據庫或文件寫入,用戶創建等)
  3. Firebase SDK for Cloud功能,其中包括您在函數代碼中用於訪問Firebase數據的庫(如令人困惑地稱爲firebase-functions)數據的快照通過數據庫)

因此,Firebase提供了一個圍繞Google雲端函數的(相對較薄的)包裝,使後者更易於使用並與Firebase集成。從這種意義上來說,它與Firebase將Google Cloud Storage集成到「Firebase for Cloudbase」(以前稱爲Firebase存儲)的方式類似。

如果您使用的是不帶Firebase的Google Cloud Platform,那麼您應該使用普通Google Cloud Functions。如果您使用的是Firebase,或者您是對Cloud Functions感興趣的移動開發者,則應使用Cloud Functions for Firebase

+11

易混淆標題,確實... – drewmoore

+0

供參考:Firebase工具允許開發者訪問所有Google Cloud活動。 「firebase-functions」SDK和Firebase CLI一起工作,允許開發人員通過簡單的部署命令管理一組功能 - 輕鬆入門,而您在需要時仍可完全訪問Google Cloud Platform。 – Ultrasaurus

+0

然而,定價不同嗎?使用Firebase上下文外的Google雲端平臺功能可以免費爲我提供每月5 GB的出站數據。在Firebase上下文中調用GCP功能禁止在免費層訪問非Google服務。外部網絡訪問被允許在25美元的級別上,或者在火焰級別(按照你的薪水支付),但即使在Blaze級別上,每百萬次調用也要支付40美分,但通過GCP,你的前200萬次調用是免費的,然後是每百萬美分.40美分。 – mancini0

相關問題