In diesem Dokument wird beschrieben, wie Sie ein Pull-Abo erstellen. Sie können ein Pull-Abo mit der Google Cloud Console, der Google Cloud CLI, der Clientbibliothek oder der Pub/Sub API erstellen.
Hinweis
- Weitere Informationen zu Abos
- Prüfen Sie, ob Ihr Unternehmen ein Pull-Abo benötigt.
- Pull-Abos
Erforderliche Rollen und Berechtigungen
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Pub/Sub-Bearbeiter (roles/pubsub.editor) für das Projekt zuzuweisen, 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:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind zum Erstellen eines Pull-Abos erforderlich:
pubsub.subscriptions.createfür das Projekt-
pubsub.topics.attachSubscriptionzum 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 Daten lesen soll.
Wählen Sie für Bereitstellungstyp die Option Pull aus.
Optional: Fügen Sie im Bereich Transformationen eine oder mehrere Transformationen einzelner 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 Richtlinie für erneute Aboversuche.
Optional: Aktivieren Sie ein Thema für unzustellbare Nachrichten, um unzustellbare Nachrichten zu empfangen.
Klicken Sie das Kästchen Unzustellbare Nachrichten an.
Wählen Sie in der Liste Dead-Letter-Thema das Dead-Letter-Thema aus oder erstellen Sie es.
Geben Sie im Feld Maximale Anzahl von Zustellversuchen die maximale Anzahl von Zustellversuchen ein.
Optional: Aktivieren oder deaktivieren Sie im Abschnitt Auslieferungseigenschaften die folgenden Auslieferungsoptionen:
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 der Lease-Verwaltung verlängern.
Optional: Konfigurieren Sie im Abschnitt Lifetime options (Optionen für die Lebensdauer), wie lange Nachrichten im Abo gespeichert werden.
Geben Sie im Abschnitt Aufbewahrungsdauer für Nachrichten an, wie lange nicht bestätigte Nachrichten aufbewahrt werden.
Wenn Sie sowohl bestätigte als auch nicht bestätigte Nachrichten beibehalten möchten, setzen Sie ein Häkchen in das Kästchen Bestätigte Nachrichten speichern.
Weitere Informationen finden Sie unter Nachrichtenaufbewahrung für ein Abo konfigurieren.
Optional: Wählen Sie für Ablaufzeitraum eine Option aus:
Wenn Sie das Ablaufdatum des Abos festlegen möchten, klicken Sie das Kästchen Ablauf nach dieser Anzahl von inaktiven Tagen an. Geben Sie die Anzahl der Tage ein, die das Abo inaktiv bleiben kann, bevor es von Pub/Sub gelöscht wird.
Wenn Sie den Ablauf des Abos deaktivieren möchten, klicken Sie das Kästchen Nie ablaufen an.
Weitere Informationen finden Sie unter Abo-Ablauf.
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 Seite Themen 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 Abschnitt beschrieben sind. 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 Befehl
gcloud pubsub subscriptions createaus, 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 Methode
projects.subscriptions.create:
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 Ihre Abo-ID.
- TOPIC_ID ist Ihre 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 (v2) verwendet. Wenn Sie noch die v1-Bibliothek verwenden, finden Sie hier die Migrationsanleitung zu v2. Eine Liste der Codebeispiele für Version 1 finden Sie unter Eingestellte Codebeispiele.
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Go-Einrichtungsanleitung in der Kurzanleitung zur Verwendung von Clientbibliotheken. 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 PHP 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 v3 verwendet. Wenn Sie noch die v2-Bibliothek verwenden, finden Sie hier die Migrationsanleitung für v3. Eine Liste der Ruby v2-Codebeispiele finden Sie unter eingestellte Codebeispiele.
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Anleitung zur Einrichtung von Ruby in der Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Pub/Sub Ruby API.
Rust
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Rust in der Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Pub/Sub Rust API-Referenzdokumentation.
Pull-Abos im Blick behalten
Cloud Monitoring bietet eine Reihe von Messwerten, mit denen Sie Abos überwachen können.
Eine Liste aller verfügbaren Messwerte für Pub/Sub und deren Beschreibungen finden Sie in der Monitoring-Dokumentation für Pub/Sub.
Sie können Abos auch in Pub/Sub überwachen.
Nächste Schritte
- Nachrichten aus einem Pull-Abo empfangen
- Abo mit
gcloud-Befehlen erstellen oder ändern - Erstellen oder ändern Sie ein Abo mit REST APIs.