Mit Pub/Sub eine Cloud Functions-Funktion auslösen

In dieser Anleitung erfahren Sie, wie Sie Cloud Scheduler und Cloud Pub/Sub verwenden, um eine Cloud-Funktion auszulösen. Cloud Scheduler wird häufig dazu verwendet, die Ausführung einer Cloud-Funktion zu planen. Vorgehensweise:

  • Erstellen Sie eine einfache Cloud-Funktion, die ein Cloud Pub/Sub-Thema abonniert.
  • Erstellen Sie ein Cloud Pub/Sub-Thema, um diese Funktion auszulösen.
  • Erstellen Sie einen Cloud Scheduler-Job, der den Cloud Pub/Sub-Trigger aufruft.
  • Führen Sie den Cloud Scheduler-Job aus.
  • Prüfen Sie das Ergebnis.

Vorbereitung

In dieser Anleitung wird davon ausgegangen, dass Sie die Cloud Scheduler-Kurzübersicht bereits durchgearbeitet haben. Daher stehen Ihnen folgende Tools und Ressourcen zur Verfügung:

  • Ein GCP-Projekt mit aktivierter Abrechnungsfunktion.

  • Eine App Engine-Anwendung an einem Standort, der von der App Engine unterstützt wird.

  • Die Cloud Scheduler API und die Cloud Pub/Sub API sind beide für das Projekt aktiviert. Sie aktivieren die Cloud Functions API während der Anleitung.

Kosten

In dieser Anleitung werden kostenpflichtige Komponenten der Cloud Platform verwendet, darunter:

  • Google Cloud Functions
  • Google Cloud Pub/Sub
  • Google Cloud Scheduler

Sie können mithilfe des Preisrechners eine Kostenschätzung für die voraussichtliche Nutzung erstellen.

Neuen Nutzern der Cloud Platform steht eventuell eine kostenlose Testversion zur Verfügung.

Cloud-Funktion erstellen

  1. Gehen Sie in der Konsole zur Seite Cloud Functions:

    Zur Seite "Cloud-Functions"

  2. Klicken Sie auf API aktivieren.

  3. Klicken Sie auf Funktion erstellen.

    image

  4. Benennen Sie Ihre Funktion. Akzeptieren Sie die Standard-Speicherzuordnung.

  5. Wählen Sie Cloud Pub/Sub aus dem Drop-down-Menü Trigger aus.

  6. Wählen Sie ein vorhandenes Thema aus der Drop-down-Liste aus oder verwenden Sie das Pop-up-Fenster Neues Thema erstellen, um ein neues Thema zu erstellen. Ihre Funktion hat jetzt das Thema abonniert. Notieren Sie sich den Namen des Themas, denn Sie werden ihn später brauchen.

  7. Für alles andere, einschließlich des Beispiels index.js und des package.json-Codes, akzeptieren Sie die Standardwerte.

  8. Klicken Sie auf Erstellen.

Cloud Scheduler-Job erstellen

  1. Gehen Sie in der Konsole zur Seite Cloud Scheduler:

    Zur Seite "Cloud Scheduler"

  2. Klicken Sie auf Job erstellen.

  3. Geben Sie Ihrem Job einen Namen und fügen Sie optional eine Beschreibung hinzu.

  4. Geben Sie die Häufigkeit der Ausführung des Jobs im Format unix-cron an.

    * * * * *
    

    Weitere Informationen finden Sie unter Zeitpläne für Cronjobs konfigurieren.

  5. Wählen Sie Ihre Zeitzone aus.

  6. Wählen Sie in der Drop-down-Liste Ziel die Option Pub/Sub aus.

  7. Geben Sie den Namen des Themas ein, das Sie oben ausgewählt haben.

  8. Fügen Sie einen kurzen Payload-String hinzu, der an Ihr Ziel gesendet werden soll.

  9. Klicken Sie auf Erstellen.

Sie haben einen Cronjob erstellt, der jede Minute eine Nachricht an Ihr Cloud Pub/Sub-Thema sendet. Ihre Cloud-Funktion hat dieses Thema abonniert.

Der Job kann jetzt ausgeführt werden.

Job ausführen

  1. Besuchen Sie in der Konsole die Seite "Cloud Scheduler".

    Zur Seite "Cloud Scheduler"

  2. Klicken Sie auf Jetzt ausführen.

    Die Ausführung des ersten in einem Projekt erstellten Jobs kann aufgrund der erforderlichen Konfiguration beim ersten Aufruf einige Minuten dauern. Sie müssen unter Umständen etwas warten.

  3. Sehen Sie sich die Spalte Ergebnis an.

    image

Glückwunsch! Sie haben gerade die Konsole verwendet, um die Ergebnisse eines Cronjobs anzuzeigen. Der Job wurde aufgeführt, um eine Nachricht an Cloud Pub/Sub zu senden. Im nächsten Schritt prüfen Sie, ob Cloud Pub/Sub tatsächlich ausgeführt wurde.

Überprüfen Sie die Ergebnisse in Cloud Functions:

So überprüfen Sie, ob Ihre Cloud-Funktion erfolgreich von Ihrem Cronjob ausgelöst wird:

  1. Gehen Sie in der Konsole zur Seite Cloud Functions:

    Zur Seite "Cloud-Functions"

  2. Klicken Sie auf den Funktionsnamen.

    image

  3. Die Seite Funktionsdetails wird geöffnet. Überprüfen Sie die Aufrufe.

    Image

    Glückwunsch! Ihre Funktion wurde ausgeführt.

  4. Klicken Sie auf Logs ansehen.

    Image

  5. Hier sehen Sie die Details zum Aufruf.

    image

Bereinigen

So vermeiden Sie, dass Ihrem GCP-Konto die in dieser Anleitung verwendeten Ressourcen in Rechnung gestellt werden:

Cloud Scheduler-Job löschen

  1. Öffnen Sie in der GCP Console die Seite Cloud Scheduler.

    Zur Seite "Scheduler"

  2. Klicken Sie auf das Kästchen neben Ihrem Job.

  3. Klicken Sie oben auf der Seite auf Löschen und bestätigen Sie den Löschvorgang.

Pub/Sub-Thema löschen

  1. Wechseln Sie in der GCP Console zur Seite Cloud Pub/-Sub.

    Zur Seite "Pub/Sub"

  2. Klicken Sie auf das Kästchen neben Ihrem Thema.

  3. Klicken Sie oben auf der Seite auf Löschen und bestätigen Sie den Löschvorgang.

Cloud Functions-Funktion löschen

  1. Öffnen Sie in der GCP Console die Seite Cloud Functions.

    Zur Seite Cloud Functions

  2. Klicken Sie das Kästchen neben Ihrer Funktion an.

  3. Klicken Sie oben auf der Seite auf Löschen und bestätigen Sie den Löschvorgang.

Projekt löschen

Löschen Sie das Projekt, das Sie nur für diese Anleitung erstellt haben.

  1. Wechseln Sie in der Cloud Console zur Seite Ressourcen verwalten.

    Zur Seite "Ressourcen verwalten"

  2. Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie dann auf Löschen .
  3. Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Beenden, um das Projekt zu löschen.