Firebase 将于 5 月 10 日重返 Google I/O 大会!立即报名

Stellen Sie mit Firebase Hosting dynamische Inhalte bereit und hosten Sie Microservices

Firebase Hosting lässt sich in serverlose Computing-Optionen integrieren, einschließlich Cloud Functions for Firebase und Cloud Run. Wenn Sie Firebase Hosting mit diesen Optionen verwenden, können Sie Microservices hosten, indem Sie HTTPS-Anforderungen leiten, um Ihre Funktionen und Container-Apps auszulösen, damit sie in einer verwalteten, sicheren Umgebung ausgeführt werden.

Cloud Functions for Firebase : Sie schreiben und implementieren eine Funktion, bei der es sich um Back-End-Code handelt, der auf einen bestimmten Trigger reagiert. Anschließend können Sie mithilfe von Firebase Hosting HTTPS-Anforderungen leiten, um die Ausführung Ihrer Funktion auszulösen.

Cloud Run : Sie schreiben und stellen eine Anwendung bereit, die in einem Container-Image verpackt ist. Anschließend können Sie mithilfe von Firebase Hosting HTTPS-Anforderungen leiten, um die Ausführung Ihrer containerisierten Anwendung auszulösen.

Anwendungsfälle

Wie können Sie Serverless-Computing-Optionen mit Firebase Hosting nutzen?

  • Dynamische Inhalte bereitstellen – Zusätzlich zum Bereitstellen statischer Inhalte auf Ihrer Hosting-Site können Sie dynamisch generierte Antworten von einer Funktion oder containerisierten Anwendung bereitstellen, die serverseitige Logik ausführt.

    Beispielsweise können Sie ein URL-Muster (wie /blog/<blog-post-id> ) auf eine Funktion verweisen, die den Blogpost-ID-Parameter der URL verwendet, um Inhalte dynamisch aus Ihrer Datenbank abzurufen.

  • Erstellen Sie REST-APIs – Sie können eine Microservice-API mithilfe von Funktionen erstellen.

    Funktionen können beispielsweise die Anmeldefunktion für Ihre Website handhaben. Während Ihre Website unter / gehostet wird, wird jede Anfrage an /api an Ihre Microservice-API umgeleitet. Sehen Sie sich als Beispiel dieses Open-Source-Beispiel an.

  • Dynamische Inhalte zwischenspeichern – Sie können das Caching Ihrer dynamischen Inhalte in einem globalen CDN konfigurieren .

    Wenn eine Funktion beispielsweise nur periodisch neue Inhalte generiert, können Sie Ihre App beschleunigen, indem Sie die generierten Inhalte für mindestens einen kurzen Zeitraum zwischenspeichern. Sie können möglicherweise auch die Ausführungskosten reduzieren, da der Inhalt vom CDN bereitgestellt wird und nicht über eine ausgelöste Funktion oder Container-App.

  • Rendern Sie Ihre Single-Page-Apps vorab – Sie können die Suchmaschinenoptimierung verbessern und die gemeinsame Nutzung in verschiedenen sozialen Netzwerken optimieren, indem Sie dynamische meta Tags erstellen. Um mehr zu erfahren, sehen Sie sich dieses Video an oder sehen Sie sich dieses Open-Source-Beispiel an.

Auswählen einer serverlosen Option

Während sich sowohl Cloud Functions for Firebase als auch Cloud Run in Firebase Hosting integrieren und eine vollständig verwaltete, automatisch skalierende und sichere serverlose Umgebung bieten, können die beiden Optionen für unterschiedliche Anwendungsfälle und das gewünschte Maß an benutzerdefinierter Konfiguration genutzt werden.

In der folgenden Tabelle werden einige grundlegende Überlegungen zur Verwendung von Cloud Functions for Firebase im Vergleich zu Cloud Run beschrieben. Eine vollständige Liste der Kontingente, Limits und Metriken finden Sie in der ausführlichen Dokumentation der einzelnen Produkte ( Cloud Functions for Firebase oder Cloud Run ).

Rücksichtnahme Cloud-Funktionen für Firebase Cloud-Run
Aufstellen Die Firebase CLI bündelt mehrere Aufgaben in einzelnen Befehlen, von der Initialisierung bis zum Erstellen und Bereitstellen. Container bieten mehr anpassbare Optionen, sodass Einrichtungs-, Build- und Bereitstellungsaufgaben separate Schritte umfassen.
Laufzeitumgebung Erfordert Node.js, aber Sie können angeben , welche Version von Node.js verwendet werden soll. Beim Erstellen Ihres Containers geben Sie die Laufzeitumgebung an.
Sprach- und Framework-Unterstützung

JavaScript und TypeScript

Web-Frameworks wie Express.js werden unterstützt.

Jede Sprache, die Dockerfiles unterstützen, einschließlich Go, Node.js, Python, Java und andere

Web-Frameworks für jede Sprache werden unterstützt.

Timeout für Hosting-Anfrage 60 Sekunden (siehe Hinweis unten) 60 Sekunden (siehe Hinweis unten)
Parallelität 1 Anfrage pro Funktionsinstanz
(keine Parallelität pro Instanz)
Bis zu 1.000 gleichzeitige Anfragen pro Containerinstanz
Abrechnung Cloud Functions-Nutzung

Kostenloses Nutzungskontingent, aber ein Cloud-Rechnungskonto ist erforderlich. Weitere Informationen finden Sie in den häufig gestellten Fragen zu Firebase .

Cloud Run-Nutzung + Container Registry-Speicher

Kostenloses Nutzungskontingent, aber ein Cloud-Rechnungskonto ist erforderlich