In diesem Dokument wird beschrieben, wie Sie ein Pull-Abo erstellen. Sie können die Google Cloud Console, die Google Cloud CLI, die Clientbibliothek oder die Pub/Sub API verwenden, um ein Pull-Abo zu erstellen.
Hinweis
- Informationen zu Abos
- Prüfen Sie, ob Ihr Unternehmen ein Pull-Abo benötigt.
- Funktionsweise von Pull-Abos
Erforderliche Rollen und Berechtigungen
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Pub/Sub-Bearbeiter (roles/pubsub.editor) für das Projekt zu erteilen, um die Berechtigungen zu erhalten, die Sie zum Erstellen eines Pull-Abos benötigen.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Diese vordefinierte Rolle enthält die Berechtigungen, die zum Erstellen eines Pull-Abos erforderlich sind. Maximieren Sie den Abschnitt Erforderliche Berechtigungen , um die notwendigen Berechtigungen anzuzeigen, die erforderlich sind:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind zum Erstellen eines Pull-Abos erforderlich:
-
pubsub.subscriptions.createfür das Projekt -
pubsub.topics.attachSubscriptionfür das Thema
Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.
Projektübergreifende Abos
Wenn Sie ein Abo in einem Projekt für ein Thema in einem anderen Projekt erstellen, benötigen Sie die Berechtigung pubsub.subscriptions.create für das Projekt, in dem Sie das Abo erstellen, und die Berechtigung pubsub.topics.attachSubscription für das Thema.
Pull-Abo erstellen
Console
So erstellen Sie ein Pull-Abo:
Rufen Sie in der Google Cloud Console die Seite Abos auf.
Klicken Sie auf Abo erstellen.
Geben Sie im Feld Abo-ID einen Namen ein.
Informationen zum Benennen eines Abos finden Sie unter Richtlinien für die Benennung eines Themas oder Abos.
Wählen Sie in der Liste Pub/Sub-Thema ein Thema aus, aus dem das Abo lesen soll.
Wählen Sie unter Zustellungstyp die Option Pull aus.
Optional: Fügen Sie im Abschnitt Transformationen eine oder mehrere Transformationen für einzelne Nachrichten (Single Message Transforms, SMTs) hinzu. Weitere Informationen finden Sie unter Abo mit SMTs erstellen.
Optional: Geben Sie im Feld Filter einen Filterausdruck ein, um Nachrichten aus dem Abo zu filtern. Weitere Informationen finden Sie unter Nachrichten aus einem Abo filtern.
Wählen Sie unter Wiederholungsrichtlinie eine Option aus. Weitere Informationen finden Sie unter Wiederholungsrichtlinie für Abos.
Optional: Aktivieren Sie ein Thema für unzustellbare Nachrichten, um nicht zustellbare Nachrichten zu empfangen.
Klicken Sie das Kästchen Unzustellbare Nachrichten an.
Wählen Sie in der Liste Thema für unzustellbare Nachrichten das Thema für unzustellbare Nachrichten aus oder erstellen Sie es.
Geben Sie im Feld Maximale Anzahl von Zustellungsversuchen die maximale Anzahl von Zustellungsversuchen ein.
Optional: Aktivieren oder deaktivieren Sie im Abschnitt Zustellungseigenschaften die folgenden Zustellungsoptionen:
Optional: Legen Sie im Abschnitt Bestätigungsfrist die Frist fest, innerhalb derer der Abonnent Nachrichten verarbeiten und bestätigen muss. Weitere Informationen finden Sie unter Bestätigungszeit mit Lease-Verwaltung verlängern.
Optional: Konfigurieren Sie im Abschnitt Lebensdaueroptionen, wie lange Nachrichten im Abo aufbewahrt werden.
Geben Sie im Abschnitt Aufbewahrungsdauer für Nachrichten an, wie lange nicht bestätigte Nachrichten aufbewahrt werden.
Wenn Sie bestätigte und nicht bestätigte Nachrichten aufbewahren möchten, klicken Sie das Kästchen Bestätigte Nachrichten aufbewahren an.
Weitere Informationen finden Sie unter Nachrichtenaufbewahrung für ein Abo konfigurieren.
Optional: Wählen Sie unter Ablaufzeitraum eine Option aus:
Wenn Sie das Abo nach einer bestimmten Anzahl von Tagen Inaktivität ablaufen lassen möchten, klicken Sie das Kästchen Nach dieser Anzahl von Tagen Inaktivität ablaufen an. Geben Sie die Anzahl der Tage ein, die das Abo inaktiv bleiben kann, bevor Pub/Sub es löscht.
Wenn Sie das Ablaufen des Abos deaktivieren möchten, klicken Sie das Kästchen Läuft nie ab an.
Weitere Informationen finden Sie unter Ablauf von Abos.
Klicken Sie auf Erstellen.
Sie können ein Abo auch im Abschnitt Themen erstellen. Diese Verknüpfung ist nützlich, um Themen mit Abos zu verknüpfen.
Rufen Sie in der Google Cloud Console die Themen Seite auf.
Klicken Sie neben dem Thema, für das Sie ein Abo erstellen möchten, auf more_vert.
Wählen Sie im Kontextmenü Abo erstellen aus.
Führen Sie auf der Seite Abo zum Thema hinzufügen die Schritte aus, die im vorherigen Verfahren beschrieben wurden. Die Themen-ID wird automatisch ausgefüllt.
gcloud
-
Aktivieren Sie Cloud Shell in der Google Cloud Console.
Unten in der Google Cloud Console wird eine Cloud Shell Sitzung gestartet und eine Eingabeaufforderung angezeigt. Cloud Shell ist eine Shell-Umgebung in der das Google Cloud CLI bereits installiert ist und Werte für Ihr aktuelles Projekt bereits festgelegt sind. Das Initialisieren der Sitzung kann einige Sekunden dauern.
-
Führen Sie den
gcloud pubsub subscriptions createBefehl aus, um ein Pull-Abo zu erstellen.gcloud pubsub subscriptions create SUBSCRIPTION_ID --topic=TOPIC_ID
Ersetzen Sie Folgendes:
SUBSCRIPTION_ID: Der Name oder die ID Ihres neuen Pull Abos.TOPIC_ID: Der Name oder die ID Ihres Themas.
REST
Verwenden Sie zum Erstellen eines Pull-Abos die
projects.subscriptions.create Methode:
Anfrage:
Die Anfrage muss mit einem Zugriffstoken im Header Authorization authentifiziert werden. So rufen Sie ein
Zugriffstoken für die aktuellen Standardanmeldedaten für Anwendungen ab:
gcloud auth application-default print-access-token.
PUT https://pubsub.googleapis.com/v1/projects/PROJECT_ID/subscriptions/SUBSCRIPTION_ID Authorization: Bearer ACCESS_TOKEN
Anfragetext:
{ "topic": "projects/PROJECT_ID/topics/TOPIC_ID" }
Wobei:
- PROJECT_ID ist die Projekt-ID.
- SUBSCRIPTION_ID ist die Abo-ID.
- TOPIC_ID ist die Themen-ID.
Response:
{
"name": "projects/PROJECT_ID/subscriptions/SUBSCRIPTION_ID",
"topic": "projects/PROJECT_ID/topics/TOPIC_ID",
"pushConfig": {},
"ackDeadlineSeconds": 10,
"messageRetentionDuration": "604800s",
"expirationPolicy": {
"ttl": "2678400s"
}
}C++
Bevor Sie dieses Beispiel testen, folgen Sie der Einrichtungsanleitung für C++ in der Kurzanleitung: Clientbibliotheken verwenden. Weitere Informationen finden Sie in der Pub/Sub C++ API-Referenzdokumentation.
C#
Bevor Sie dieses Beispiel testen, folgen Sie der Einrichtungsanleitung für C# in der Schnellstart-Anleitung: Clientbibliotheken verwenden. Weitere Informationen finden Sie in der Referenzdokumentation zur Pub/Sub C# API.
Go
Im folgenden Beispiel wird die Hauptversion der Go Pub/Sub-Clientbibliothek (Version 2) verwendet. Wenn Sie noch die Version 1 verwenden, finden Sie weitere Informationen im Migrationsleitfaden zu Version 2. Eine Liste der Codebeispiele für Version 1 finden Sie unter Veraltete Codebeispiele.
Bevor Sie dieses Beispiel testen, folgen Sie der Einrichtungsanleitung für Go in der Schnellstart-Anleitung: Clientbibliotheken verwenden. Weitere Informationen finden Sie in der Referenzdokumentation zur Pub/Sub Go API.
Java
Bevor Sie dieses Beispiel testen, folgen Sie der Einrichtungsanleitung für Java in der Kurzanleitung: Clientbibliotheken verwenden. Weitere Informationen finden Sie in der Referenzdokumentation zur Pub/Sub Java API.
Node.js
Bevor Sie dieses Beispiel testen, folgen Sie der Einrichtungsanleitung für PHP in der Schnellstart-Anleitung: Clientbibliotheken verwenden. Weitere Informationen finden Sie in der Referenzdokumentation zur Pub/Sub Node.js API.
Node.ts
Bevor Sie dieses Beispiel testen, folgen Sie der Einrichtungsanleitung für Node.js in der Schnellstart-Anleitung: Clientbibliotheken verwenden. Weitere Informationen finden Sie in der Referenzdokumentation zur Pub/Sub Node.js API.
PHP
Folgen Sie der Einrichtungsanleitung für PHP unter Schnellstart: Clientbibliotheken verwenden, bevor Sie dieses Beispiel ausprobieren. Weitere Informationen finden Sie in der Referenzdokumentation zur Pub/Sub PHP API.
Python
Bevor Sie dieses Beispiel testen, folgen Sie der Einrichtungsanleitung für Python in der Schnellstart-Anleitung: Clientbibliotheken verwenden. Weitere Informationen finden Sie in der Referenzdokumentation zur Pub/Sub Python API.
Ruby
Im folgenden Beispiel wird die Ruby Pub/Sub-Clientbibliothek Version 3 verwendet. Wenn Sie noch die Version 2 verwenden, finden Sie weitere Informationen im Migrationsleitfaden zu Version 3. Eine Liste der Codebeispiele für Ruby Version 2 finden Sie unter Veraltete Codebeispiele.
Bevor Sie dieses Beispiel testen, folgen Sie der Einrichtungsanleitung für Ruby in der Schnellstart-Anleitung: Clientbibliotheken verwenden. Weitere Informationen finden Sie in der Referenzdokumentation zur Pub/Sub Ruby API.
Pull-Abos beobachten
Cloud Monitoring bietet eine Reihe von Messwerten zum Beobachten von Abos.
Eine Liste aller verfügbaren Messwerte im Zusammenhang mit Pub/Sub und deren Beschreibungen finden Sie in der Monitoring-Dokumentation für Pub/Sub.
Sie können Abos auch in Pub/Sub beobachten.
Nächste Schritte
- Nachrichten aus einem Pull-Abo empfangen.
- Abo mit
gcloudBefehlen erstellen oder ändern - Abo mit REST APIs erstellen oder ändern