Von Kafka zu Pub/Sub Lite migrieren

Dieses Dokument ist nützlich, wenn Sie erwägen, von selbstverwalteten Systemen zu migrieren. Apache Kafka zu Pub/Sub Lite.

Übersicht über Pub/Sub Lite

Pub/Sub Lite ist ein umfangreicher Messaging-Dienst für und niedrige Betriebskosten. Pub/Sub Lite bietet zonal und regional Speicher zusammen mit vorab bereitgestellter Kapazität. In Pub/Sub Lite können Sie zonale oder regionale Lite-Themen auswählen. Angebot für regionale Lite-Themen SLA zur selben Verfügbarkeit wie Pub/Sub-Themen. Es gibt jedoch bei der Zuverlässigkeit zwischen Pub/Sub und Pub/Sub Lite in Bezug auf Nachrichtenreplikation

Weitere Informationen zu Pub/Sub und Pub/Sub Lite Siehe Was ist Pub/Sub?

Weitere Informationen zu von Lite-unterstützten Regionen und Zonen finden Sie unter Pub/Sub Lite-Speicherorte

Terminologie in Pub/Sub Lite

Im Folgenden finden Sie einige wichtige Begriffe für Pub/Sub Lite.

  • Nachricht. Daten, die durch den Pub/Sub Lite-Dienst geleitet werden.

  • Thema: Eine benannte Ressource, die einen Feed von Nachrichten darstellt. Innerhalb von Pub/Sub Lite können Sie eine zonale oder regionale Lite-Thema Regionale Pub/Sub Lite-Themen speichern Daten in in zwei Zonen einer Region. Zonale Pub/Sub Lite-Themen Daten in nur einer Zone zu replizieren.

  • Reservierung. Ein benannter Pool mit Durchsatzkapazität, die von mehreren Lite-Themen in einer Region

  • Abo: Eine benannte Ressource, die für ein Interesse an Nachrichten von einem bestimmten Lite-Thema empfangen. Ein Abo ähnelt einer Kafka-Nutzergruppe, die nur eine Verbindung zu einem einzelnen Thema herstellt.

  • Abonnent: Ein Pub/Sub Lite-Client, der Nachrichten von einem Lite-Thema und zu einem bestimmten Abo empfängt. Ein Abo kann mehrere Abonnentenclients haben. In diesem Fall werden die Nachrichten und das Load-Balancing auf den Abonnentenclients. In Kafka kann ein Abonnent wird als Verbraucher bezeichnet.

  • Verlag oder Webpublisher: Eine Anwendung, die Nachrichten erstellt und (Veröffentlichungen) sendet zu einem bestimmten Lite-Thema. Ein Thema kann mehrere Publisher haben. In Kafka wird ein Verlag oder Webpublisher als Producer bezeichnet.

Unterschiede zwischen Kafka und Pub/Sub Lite

Pub/Sub Lite ist konzeptionell ähnlich wie Kafka, Es ist ein anderes System mit einer enger gefassten API, Datenaufnahme. Die Unterschiede sind zwar für Streamaufnahme und -verarbeitung gibt es einige spezifische Anwendungsfälle, sind diese Unterschiede wichtig.

Kafka als Datenbank

Im Gegensatz zu Kafka unterstützt Pub/Sub Lite derzeit weder transaktionales Veröffentlichen noch die Log-Komprimierung. Die Idempotenz wird jedoch unterstützt. Diese Kafka-Funktionen sind nützlicher, wenn Sie Kafka als Datenbank und nicht als Nachrichtensystem kommunizieren. Wenn Sie Kafka hauptsächlich als Datenbank verwenden, sollten Sie erwägen, Kafka-Cluster erstellen oder eine verwaltete Kafka-Lösung wie Confluent Cloud. Falls keine dieser Lösungen möglich ist, können Sie auch eine horizontal skalierbare Datenbank wie Cloud Spanner

Kafka-Streams

Kafka-Streams ist ein auf Kafka basierendes Datenverarbeitungssystem. Es ermöglicht zwar Einschleusung von Verbraucherclients erfordert Zugriff auf alle Administratoren Geschäftsabläufe. Kafka Streams verwendet außerdem die Attribute der transaktionalen Datenbank. von Kafka zum Speichern interner Metadaten. Mit Pub/Sub Lite kann derzeit nicht für Kafka Streams-Anwendungen verwendet werden.

Apache Beam ein ähnliches Streaming-Datenverarbeitungssystem, das in Kafka integriert ist, Pub/Sub und Pub/Sub Lite. Sie können Beam-Pipelines vollständig verwaltet mit Dataflow oder auf Ihren vorhandenen Apache Flink- und Apache Spark-Clustern ausführen.

Überwachen

Kafka-Clients können serverseitige Messwerte lesen. In Pub/Sub Lite werden die für das Publisher- und Abonnentenverhalten relevanten über Cloud Monitoring ohne zusätzliche Konfiguration.

Kapazitätsverwaltung

Die Kapazität eines Kafka-Themas wird durch die Kapazität des Clusters bestimmt. Replikation, Schlüsselverdichtung und Batcheinstellungen bestimmen die erforderliche Kapazität um ein beliebiges Thema im Kafka-Cluster zu bedienen. Der Durchsatz eines Kafka Thema ist durch die Kapazität der Rechner begrenzt, auf denen die Broker genutzt werden ausgeführt werden. Im Gegensatz dazu müssen Sie sowohl Speicher als auch Durchsatz definieren Kapazität für ein Pub/Sub Lite-Thema. Die Speicherkapazität von Pub/Sub Lite ist konfigurierbare Eigenschaft des Themas Die Durchsatzkapazität basiert auf dem die Kapazität der konfigurierten reservation, sowie inhärente oder konfigurierte Limits pro Partition.

Authentifizierung und Sicherheit

Apache Kafka unterstützt mehrere offene Authentifizierungs- und Verschlüsselungsmechanismen. Mit Pub/Sub Lite basiert die Authentifizierung auf dem IAM-System. Die Sicherheit wird durch die Verschlüsselung im Ruhezustand und bei der Übertragung gewährleistet. Weitere Informationen zur Pub/Sub Lite-Authentifizierung finden Sie in der Abschnitt „Migrationsworkflow“ weiter unten in diesem Dokument.

Kafka-Properties Pub/Sub Lite-Properties zuordnen

Kafka bietet viele Konfigurationsoptionen, die die Themenstruktur steuern, und Broker-Properties sein. In diesem Abschnitt werden einige gängige Formate für die Datenaufnahme beschrieben, zusammen mit ihren Entsprechungen in Pub/Sub Lite. Pub/Sub Lite ist ein verwalteten Systemen verwenden, müssen Sie nicht viele Zwischenhändlereigenschaften.

Attribute für die Themenkonfiguration

Kafka-Property Pub/Sub Lite-Property Beschreibung
retention.bytes Speicher pro Partition Alle Partitionen in einem Lite-Thema haben die gleiche konfigurierte Speicherkapazität. Die Gesamtspeicherkapazität eines Lite-Themas entspricht der Summe der Speicherkapazität aller Partitionen im Thema.
retention.ms Aufbewahrungsdauer für Nachrichten Der maximale Zeitraum, für den ein Lite-Thema Nachrichten speichert. Wenn Sie keinen Aufbewahrungszeitraum für Nachrichten angeben, speichert das Lite-Thema Nachrichten, bis Sie die Speicherkapazität überschreiten.
flush.ms, acks Nicht in Pub/Sub Lite konfigurierbar Veröffentlichungen werden erst bestätigt, wenn sie garantiert im replizierten Speicher beibehalten werden.
max.message.bytes Nicht konfigurierbar in Pub/Sub Lite 3,5 MiB ist die maximale Nachrichtengröße, die an Pub/Sub Lite gesendet werden kann. Die Größe der Nachricht wird reproduzierbar berechnet.
message.timestamp.type Nicht konfigurierbar in Pub/Sub Lite Bei Verwendung der Nutzerimplementierung wird der Ereigniszeitstempel (falls vorhanden) ausgewählt oder stattdessen der Veröffentlichungszeitstempel verwendet. Bei der Verwendung von Beam sind sowohl Veröffentlichungs- als auch Ereigniszeitstempel verfügbar.

Weitere Informationen zu den Attributen der Lite-Themen Siehe Eigenschaften eines Lite-Themas.

Producer-Konfigurationsattribute

Pub/Sub Lite unterstützt die Producer-Wire-Protokoll. Einige Attribute ändern das Verhalten der Cloud-Clientbibliotheken des Erstellers. Einige häufig auftretende Probleme werden in der folgenden Tabelle erläutert.

Kafka-Property Pub/Sub Lite-Property Beschreibung
auto.create.topics.enable Nicht konfigurierbar in Pub/Sub Lite Erstellen Sie ein Thema und ein Abo, das in etwa einer Nutzergruppe für ein einzelnes Thema in Pub/Sub Lite entspricht. Sie können die Console, die gcloud CLI, API oder die Cloud-Clientbibliotheken verwenden.
key.serializer und value.serializer In Pub/Sub Lite nicht konfigurierbar

Erforderlich bei Verwendung von Kafka Producer oder einer vergleichbaren Bibliothek, die über das Wire Protocol kommuniziert.

batch.size In Pub/Sub Lite unterstützt Die Batchverarbeitung wird unterstützt. Für eine optimale Leistung wird ein Wert von 10 MiB empfohlen.
linger.ms In Pub/Sub Lite unterstützt Die Batchverarbeitung wird unterstützt. Der empfohlene Wert für diesen Wert ist 50 ms für eine optimale Leistung.
max.request.size In Pub/Sub Lite unterstützt Der Server legt ein Limit von 20 MiB pro Batch fest. Legen Sie für diesen Wert in Ihrem Kafka-Client einen Wert unter 20 MiB fest.
enable.idempotence In Pub/Sub Lite unterstützt
compression.type In Pub/Sub Lite nicht unterstützt Sie müssen diesen Wert explizit auf none festlegen.

Eigenschaften der Nutzerkonfiguration

Pub/Sub Lite unterstützt die Consumer Wire Protocol. Einige Attribute ändern das Verhalten der Cloud-Clientbibliotheken für private Nutzer. Einige häufig auftretende Probleme werden in der folgenden Tabelle erläutert.

Kafka-Property Beschreibung
key.deserializer, value.deserializer

Erforderlich, wenn der Kafka-Nutzer oder eine vergleichbare Bibliothek über das Wire Protocol kommuniziert.

auto.offset.reset Diese Konfiguration wird nicht unterstützt oder benötigt. Abos haben nach ihrer Erstellung garantiert einen festgelegten Versatzort.
message.timestamp.type Der Veröffentlichungszeitstempel ist immer in Pub/Sub Lite verfügbar und nimmt für jede Partition garantiert nicht ab. Ereigniszeitstempel können vorhanden sein, je nachdem, ob sie bei der Veröffentlichung der Nachricht angehängt wurden oder nicht. Bei Verwendung von Dataflow stehen sowohl Veröffentlichungs- als auch Ereigniszeitstempel gleichzeitig zur Verfügung.
max.partition.fetch.bytes, max.poll.records Legt ein weiches Limit für die Anzahl der Datensätze und Byte fest, die bei der Funktion "poll()" zurückgegeben werden, sowie für die Anzahl der Byte, die von internen Abrufanfragen zurückgegeben werden. Der Standardwert für „max.partition.fetch.bytes“ von 1 MiB kann den Durchsatz Ihres Clients einschränken. Erwägen Sie, diesen Wert zu erhöhen.

Kafka- und Pub/Sub Lite-Features im Vergleich

In der folgenden Tabelle werden Apache Kafka-Features mit Pub/Sub Lite-Features verglichen:

Feature Kafka Pub/Sub Lite
Nachrichtenreihenfolge Ja Ja
Nachrichten deduplizieren Ja Ja, mit Dataflow
Push-Abos Nein Ja, mit dem Pub/Sub-Export
Transaktionen Ja Nein
Nachrichtenspeicher Begrenzt durch verfügbaren Maschinenspeicher Unbegrenzt
Nachricht noch einmal abspielen Ja Ja
Logging und Monitoring Selbstverwaltet Automatisiert mit Cloud Monitoring
Streamverarbeitung Ja mit Kafka Streams, Apache Beam oder Dataproc. Ja mit Beam oder Dataproc.

In der folgenden Tabelle wird verglichen, welche Funktionen von Kafka selbst gehostet werden und welche von Google mit Pub/Sub Lite verwaltet werden:

Feature Kafka Pub/Sub Lite
Verfügbarkeit Stellen Sie Kafka manuell an zusätzlichen Standorten bereit. Weltweit bereitgestellt. Siehe Standorte.
Notfallwiederherstellung Entwerfen und verwalten Sie Ihre eigene Sicherung und Replikation. Von Google verwaltet.
Infrastrukturverwaltung Virtuelle Maschinen (VMs) oder Maschinen manuell bereitstellen und betreiben. Sorgen Sie für einheitliche Versionsverwaltung und Patches. Von Google verwaltet.
Kapazitätsplanung Planen Sie den Speicher- und Rechenbedarf im Voraus manuell. Von Google verwaltet. Sie können die Rechenleistung und den Speicherplatz jederzeit erhöhen.
Support Support rund um die Uhr.

Kostenvergleich von Kafka und Pub/Sub Lite

Kosten in Pub/Sub Lite schätzen und verwalten anders als in Kafka. Die Kosten für einen lokalen oder lokalen Kafka-Cluster Cloud umfassen die Kosten für Maschinen, Laufwerke, Netzwerke, eingehende und ausgehende Nachrichten. Nachrichten. Er umfasst auch die Gemeinkosten für die Verwaltung und Wartung und die zugehörige Infrastruktur. Bei der Verwaltung eines Kafka-Clusters Sie müssen die Maschinen manuell upgraden, die Clusterkapazität planen und Implementierung einer Notfallwiederherstellung, die umfassende Planung und Tests umfasst. Sie müssen all diese verschiedenen Kosten aggregieren, um den tatsächlichen Gesamtbetriebskosten (TCO).

Pub/Sub Lite-Preise enthalten die Reservierungskosten (veröffentlichte Byte, abonnierte Byte, vom Kafka-Proxy verarbeitete Byte) und den Kosten des bereitgestellten Speichers. Sie zahlen zusätzlich zu den Kosten für ausgehende Nachrichten genau für die Ressourcen, die Sie reservieren. Sie können die Preisrechner für eine Kostenschätzung.

Migrationsworkflow

So migrieren Sie ein Thema aus einem Kafka-Cluster zu Pub/Sub Lite:

Pub/Sub Lite-Ressourcen konfigurieren

  1. Pub/Sub Lite erstellen reservation für den erwarteten Durchsatz für alle Themen, die Sie migrieren.

    Pub/Sub Lite verwenden Preisrechner zur Berechnung der Gesamtsumme Durchsatzmesswerte Ihrer vorhandenen Kafka-Themen. Weitere Informationen zum Erstellen von Reservierungen, Weitere Informationen finden Sie unter Lite-Reservierungen erstellen und verwalten.

  2. Ein Pub/Sub Lite-Thema für jedes entsprechende Thema erstellen in Kafka.

    Weitere Informationen zum Erstellen von Lite-Themen finden Sie unter Lite-Themen erstellen und verwalten.

  3. Erstellen Sie für jedes entsprechende Nutzergruppe und Thema im Kafka-Cluster.

    Beispiel: Für eine Nutzergruppe namens consumers, die Daten aus topic-a und topic-b, du musst ein Abo erstellen consumers-a ist mit topic-a verknüpft und ein Abonnement consumers-b, das mit topic-b verknüpft ist. Weitere Informationen zum Erstellen von Abos Weitere Informationen finden Sie unter Lite-Abos erstellen und verwalten.

Bei Pub/Sub Lite authentifizieren

Wählen Sie je nach Typ Ihres Kafka-Clients eine der folgenden Methoden aus:

Java-basierte Kafka-Clients ab Version 3.1.0 mit Neuerstellung

Für Java-basierte Kafka-Clients ab Version 3.1.0, die neu erstellt werden können auf der Instanz, auf der Sie den Kafka-Client ausführen:

  1. Installieren Sie das Paket com.google.cloud:pubsublite-kafka-auth:

  2. Die erforderlichen Parameter für die Authentifizierung bei Pub/Sub Lite mithilfe von com.google.cloud.pubsublite.kafka.ClientParameters.getParams

    Die Methode getParams() (siehe Codebeispiel ) wird Folgendes initialisiert: JAAS und SASL Konfigurationen als Parameter für die Authentifizierung Pub/Sub Lite:

    security.protocol=SASL_SSL
    sasl.mechanism=OAUTHBEARER
    sasl.oauthbearer.token.endpoint.url=http://localhost:14293
    sasl.jaas.config=org.apache.kafka.common.security.oauthbearer.secured.OAuthBearerLoginCallbackHandler
    

Java-basierte Kafka-Clients mit Version 3.1.0 oder höher, die nicht neu erstellt werden müssen

Für Kafka-Clients, die KIP-768 unterstützen, OAUTHBEARER-Authentifizierung ausschließlich für die Konfiguration, die ein Python-Sidecar-Skript verwendet. Zu diesen Versionen gehören die Ausgabe von Januar 2022 Java Version 3.1.0 oder höher.

Führen Sie die folgenden Schritte für die Instanz aus, auf der Sie Ihren Kafka-Client ausführen:

  1. Installieren Sie Python 3.6 oder höher.

    Siehe Python installieren.

  2. Installieren Sie das Google-Authentifizierungspaket: pip install google-auth

    Diese Bibliothek vereinfacht die verschiedenen Server-zu-Server-Authentifizierungen. für den Zugriff auf Google APIs. Weitere Informationen finden Sie in der Seite „google-auth.

  3. Führen Sie das Skript kafka_gcp_credentials.py aus.

    Dieses Script startet einen lokalen HTTP-Server und ruft mit google.auth.default() die Standard-Google Cloud-Anmeldedaten in der Umgebung ab.

    Das Hauptkonto in den abgerufenen Anmeldedaten muss die pubsublite.locations.openKafkaStream haben Berechtigung für das von Ihnen verwendete Google Cloud-Projekt und den Speicherort, für den Sie eine Verbindung herstellen. Pub/Sub Lite-Publisher (roles/pubsublite.publisher) und Pub/Sub Lite-Abonnent (roles/pubsublite.subscriber) Rollen haben Folgendes erforderliche Berechtigung. Diese Rollen zu Ihrem Hauptkonto.

    Die Anmeldedaten werden in der SASL-/OAUTHBEARER-Authentifizierung für den Kafka-Client.

    Die folgenden Parameter sind in Ihren Properties erforderlich um sich vom Kafka-Client bei Pub/Sub Lite zu authentifizieren:

    security.protocol=SASL_SSL
    sasl.mechanism=OAUTHBEARER
    sasl.oauthbearer.token.endpoint.url=localhost:14293
    sasl.login.callback.handler.class=org.apache.kafka.common.security.oauthbearer.secured.OAuthBearerLoginCallbackHandler
    sasl.jaas.config=org.apache.kafka.common.security.oauthbearer.OAuthBearerLoginModule \
      required clientId="unused" clientSecret="unused" \
      extension_pubsubProject="PROJECT_ID";
    

    Ersetzen Sie PROJECT_ID durch die ID Ihres Projekts, in dem Pub/Sub Lite ausgeführt wird.

Alle anderen Clients ohne Neuerstellung

Führen Sie für alle anderen Clients die folgenden Schritte aus:

  1. Laden Sie eine JSON-Datei mit dem Dienstkontoschlüssel herunter. für das Dienstkonto, das Sie für Ihren Client verwenden möchten.

  2. Codieren Sie die Dienstkontodatei mit base64-Codierung, um sie als Ihr Authentifizierungsstring.

    Auf Linux- oder macOS-Systemen können Sie den Befehl base64 verwenden. (häufig standardmäßig installiert) wie folgt:

    base64 < my_service_account.json > password.txt
    

    Du kannst den Inhalt der Passwortdatei zur Authentifizierung verwenden mit den folgenden Parametern.

    Java

    security.protocol=SASL_SSL
    sasl.mechanism=PLAIN
    sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required \
     username="PROJECT_ID" \
     password="contents of base64 encoded password file";
    

    Ersetzen Sie PROJECT_ID durch die ID des Projekts, in dem Pub/Sub ausgeführt wird.

    librdkafka

    security.protocol=SASL_SSL
    sasl.mechanism=PLAIN
    sasl.username=PROJECT_ID
    sasl.password=contents of base64 encoded password file
    

    Ersetzen Sie PROJECT_ID durch die ID des Projekts, in dem Pub/Sub ausgeführt wird.

Daten mit Kafka Connect klonen

Das Pub/Sub Lite-Team verwaltet eine Implementierung eines Kafka Connect-Sinks. Sie können diese Implementierung so konfigurieren, dass Daten kopiert werden, von einem Kafka-Thema in ein Pub/Sub Lite-Thema. Kafka Connect-Cluster.

Informationen zum Konfigurieren des Connectors für das Kopieren von Daten finden Sie unter Kafka-Connector für Pub/Sub-Gruppe.

Wenn die Partitionsaffinität durch den Migrationsprozess nicht beeinträchtigt werden soll, müssen das Kafka-Thema und das Pub/Sub Lite-Thema dieselbe Anzahl von Partitionen haben und die Eigenschaft pubsublite.ordering.mode muss auf KAFKA festgelegt sein. Dadurch leitet der Connector Nachrichten an Pub/Sub Lite-Partition mit demselben Index wie die Kafka-Partition in dem sie ursprünglich veröffentlicht wurden.

Nutzer migrieren

Das Ressourcenmodell von Pub/Sub Lite unterscheidet sich von dem von Kafka. Im Gegensatz zu einer Zielgruppe ist ein Abo eine explizite Ressource, die genau einem Thema zugeordnet ist. Aufgrund dieses Unterschieds kann jede Stelle im Kafka Consumer API, für die eine topic übergeben werden muss, also das vollständige Abo muss stattdessen -Pfad übergeben werden.

Zusätzlich zu den SASL-Konfigurationen für den Kafka-Client sind die folgenden Einstellungen erforderlich, wenn Sie die Kafka Consumer API verwenden, um mit Pub/Sub Lite zu interagieren.

bootstrap.servers=REGION-kafka-pubsub.googleapis.com:443
group.id=unused

Ersetzen Sie REGION durch die Region, in der sich Ihr Pub/Sub Lite-Abo befindet.

Bevor der erste Pub/Sub Lite-Nutzerjob für einen bestimmten Abo abgeschlossen haben, können Sie ein Admin-Suchvorgang, um den anfänglichen Standort für Ihre Zielgruppe.

Wenn Sie Ihre Kunden starten, greifen sie wieder auf den aktuellen Offset in des Nachrichtenrückstands. Führen Sie sowohl die alten als auch neue Kundschaft zu identifizieren, solange sie ihr Verhalten überprüfen, und die alten Privatkunden zurückstufen.

Ersteller migrieren

Zusätzlich zu den SASL-Konfigurationen für den Kafka-Client Folgendes ist auch als Producer-Parameter erforderlich, wenn die Kafka Producer API für die Interaktion mit Pub/Sub Lite.

bootstrap.servers=REGION-kafka-pubsub.googleapis.com:443

Ersetzen Sie REGION durch die Region, in der sich Ihr Pub/Sub Lite-Thema befindet.

Nachdem Sie alle Nutzer des Themas migriert haben, die sie lesen möchten aus Pub/Sub Lite übertragen, verschieben Sie Ihren Producer-Traffic Pub/Sub Lite direkt nutzen.

Migrieren Sie die Producer-Clients nach und nach, um in den Pub/Sub Lite-Thema anstelle des Kafka-Themas.

Starten Sie die Producer-Clients neu, um neue Konfigurationen zu übernehmen.

Kafka Connect herunterfahren

Nachdem Sie alle Producer migriert haben, die direkt in Pub/Sub Lite schreiben, kopiert der Connector keine Daten mehr.

Sie können die Kafka Connect-Instanz herunterfahren.

Fehlerbehebung bei Kafka-Verbindungen

Da Kafka-Clients über ein spezielles Wire-Protokoll kommunizieren, können wir nicht für alle Anfragen Fehlermeldungen bereitstellen. Verlassen Sie sich auf die Fehlercodes, die in der Nachricht enthalten sind.

Wenn Sie mehr Details zu Fehlern sehen möchten, die im Client auftreten, legen Sie die Protokollierungsebene für das Präfix org.apache.kafka auf FINEST fest.

Niedriger Durchsatz und steigender Rückstand

Für einen niedrigen Durchsatz kann es mehrere Gründe geben und einen wachsenden Rückstand. Ein Grund kann die unzureichende Kapazität sein.

Sie können die Durchsatzkapazität auf Themenebene konfigurieren oder mit Reservierungen. Bei unzureichender Durchsatzkapazität für Abos und ist der entsprechende Durchsatz für und die Veröffentlichung gedrosselt sind.

Dieser Durchsatzfehler wird vom Messwert topic/flow_control_status für Verlage und Webpublisher subscription/flow_control_status Messwert für Abonnenten. Der Messwert bietet die folgenden Status:

  • NO_PARTITION_CAPACITY: Diese Meldung gibt an, dass die Partition pro Partition Durchsatzlimit wurde erreicht.

  • NO_RESERVATION_CAPACITY: Diese Meldung gibt an, dass die Durchsatzlimit wurde erreicht.

Sie können die Auslastungsdiagramme für das Thema oder die Reservierung ansehen Veröffentlichungs- und Abokontingente erhalten und prüfen, ob die Auslastung bei oder in der Nähe von 100 % liegt.

Um dieses Problem zu beheben, erhöhen Sie Durchsatzkapazität des Thema oder Reservierung.

Fehlermeldung „Fehler bei der Themenautorisierung“

Für die Veröffentlichung mithilfe der Kafka API muss der Lite-Dienst-Agent die Berechtigung Berechtigungen zum Veröffentlichen im Pub/Sub Lite-Thema.

In Ihrem Client wird im Ereignis der Fehler TOPIC_AUTHORIZATION_FAILED angezeigt. dass Sie nicht die erforderlichen Berechtigungen zum Veröffentlichen Pub/Sub Lite-Thema.

Prüfen Sie, ob der Lite-Dienst-Agent für das Projekt bestanden wurde, um das Problem zu beheben Auth-Konfiguration fest.

Fehlermeldung zu ungültigem Thema

Zum Abonnieren über die Kafka API muss der vollständige Abopfad übergeben werden alle Stellen, an denen in der Kafka Consumer API eine topic erwartet wird.

Andernfalls erhalten Sie die Fehlermeldung INVALID_TOPIC_EXCEPTION in Ihrem Privatkundenclient. einen gut formatierten Abopfad übergeben.

Ungültige Anfrage, wenn keine Reservierungen verwendet werden

Zur Verwendung der Kafka-Wire Protocol-Unterstützung müssen alle Themen ein zugehöriges um die Nutzung in Rechnung zu stellen.