In dieser Anleitung erfahren Sie, wie Sie mit Cloud Scheduler und Pub/Sub eine Cloud Functions-Funktion auslösen. Cloud Scheduler wird häufig dazu verwendet, die Ausführung einer Cloud-Funktion zu planen. Vorgehensweise:
- Erstellen Sie eine einfache Cloud Functions-Funktion die ein Pub/Sub-Thema abonniert.
- Erstellen Sie ein Pub/Sub-Thema, um diese Funktion auszulösen.
- Erstellen Sie einen Cloud Scheduler-Job, der den 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:Google Cloud-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 Pub/Sub API sind beide im 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
Mit unserem Preisrechner können Sie eine Kostenschätzung für Ihre voraussichtliche Nutzung erstellen.
Neuen Cloud Platform-Nutzern steht möglicherweise eine kostenlose Testversion zur Verfügung.Cloud-Funktion erstellen
Gehen Sie in der Konsole zur Seite Cloud Functions:
Klicken Sie auf API aktivieren.
Klicken Sie auf Funktion erstellen.
Benennen Sie Ihre Funktion. Akzeptieren Sie die Standard-Speicherzuordnung.
Wählen Sie Cloud Pub/Sub aus dem Drop-down-Menü Trigger aus.
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.
Für alles andere, einschließlich des Beispiels
index.js
und despackage.json
-Codes, akzeptieren Sie die Standardwerte.Klicken Sie auf Erstellen.
Cloud Scheduler-Job erstellen
Gehen Sie in der Konsole zur Seite Cloud Scheduler:
Klicken Sie auf Job erstellen.
Wählen Sie bei Bedarf eine Region für die Ausführung des Jobs aus.
Geben Sie Ihrem Job einen Namen und fügen Sie optional unter "Description" eine Beschreibung hinzu.
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.
Wählen Sie Ihre Zeitzone aus.
Wählen Sie in der Drop-down-Liste Ziel die Option Pub/Sub aus.
Geben Sie den Namen des Themas ein, das Sie oben ausgewählt haben.
Fügen Sie einen kurzen Payload-String hinzu, der an Ihr Ziel gesendet werden soll.
Klicken Sie auf Erstellen.
Sie haben jetzt einen Cronjob, der jede Minute eine Nachricht an Ihr Pub/Sub-Thema sendet. Ihre Cloud-Funktion hat dieses Thema abonniert.
Der Job kann jetzt ausgeführt werden.
Job ausführen
Besuchen Sie in der Konsole die Seite "Cloud Scheduler".
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.
Sehen Sie sich die Spalte Ergebnis an.
Das wars! Sie haben gerade die Console verwendet, um die Ergebnisse der Ausführung eines Cronjobs anzuzeigen, der eine Nachricht an Pub/Sub sendet. 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:
Gehen Sie in der Konsole zur Seite Cloud Functions:
Klicken Sie auf den Funktionsnamen.
Die Seite Funktionsdetails wird geöffnet. Überprüfen Sie die Aufrufe.
Das wars! Ihre Funktion wurde ausgeführt.
Klicken Sie auf Logs ansehen.
Hier sehen Sie die Details zum Aufruf.
Clean-up
So vermeiden Sie, dass Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen in Rechnung gestellt werden:
Cloud Scheduler-Job löschen
Wechseln Sie in der Cloud Console zur Seite Cloud Scheduler.
Klicken Sie auf das Kästchen neben Ihrem Job.
Klicken Sie oben auf der Seite auf Löschen und bestätigen Sie den Löschvorgang.
Pub/Sub-Thema löschen
Rufen Sie in der Cloud Console die Seite Cloud Pub/Sub auf.
Klicken Sie auf das Kästchen neben Ihrem Thema.
Klicken Sie oben auf der Seite auf Löschen und bestätigen Sie den Löschvorgang.
Cloud Functions-Funktion löschen
Rufen Sie in der Cloud Console die Seite Cloud Functions auf.
Klicken Sie das Kästchen neben Ihrer Funktion an.
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.
- Wechseln Sie in der Cloud Console zur Seite Ressourcen verwalten.
- Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie dann auf Löschen.
- Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Shut down (Beenden), um das Projekt zu löschen.