Integrieren Sie die KPL in den Herstellercode - Amazon Kinesis Data Streams

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Integrieren Sie die KPL in den Herstellercode

Die Kinesis Producer Library (KPL) wird in einem eigenen Prozess ausgeführt und kommuniziert über IPC mit Ihrem übergeordneten Benutzerprozess. Diese Architektur wird gelegentlich auch als Microservice bezeichnet und aus zwei Gründen verwendet:

1) Ihr Benutzerprozess stürzt auch dann nicht ab, wenn die KPL abstürzt

Im Prozess sind möglicherweise Aufgaben enthalten, die nichts mit Kinesis Data Streams zu tun haben. Diese können auch bei einem Absturz der KPL weiterhin durchgeführt werden. Die KPL kann von Ihrem übergeordneten Benutzerprozess auch neu gestartet werden, sodass eine volle Betriebsfähigkeit wiederhergestellt wird (die Funktion ist in den offiziellen Wrappern enthalten).

Ein Beispiel hierfür ist ein Webserver, der Metriken an Kinesis Data Streams sendet. Der Server kann auch noch Seiten bereitstellen, wenn die Komponente Kinesis Data Streams nicht mehr betriebsfähig ist. Ein Absturz des gesamten Servers aufgrund eines Fehlers in der KPL würde einen unnötigen Ausfall verursachen.

2) Es können beliebige Clients unterstützt werden

Es gibt immer Kunden, die Sprachen verwenden, die nicht offiziell unterstützt werden. Diese Kunden sollten die KPL auch problemlos nutzen können.

Empfohlene Verwendungsmatrix

In der folgenden Verwendungsmatrix sind die empfohlenen Einstellungen für verschiedene Benutzer aufgeführt und Sie werden darüber informiert, ob und wie Sie die KPL verwenden sollten. Beachten Sie, dass bei aktivierter Aggregation auch eine Disaggregation verwendet werden muss, um die Datensätze auf der Konsumentenseite zu extrahieren.

Sprache auf Produzentenseite Sprache auf Konsumentenseite KCL-Version Prüfpunkt-Logik Können Sie die KPL verwenden? Einschränkungen
Alles außer Java * * * Nein N/A
Java Java Direkte Java-SDK-Verwendung N/A Ja Bei aktivierter Aggregation muss nach GetRecords-Aufrufen die bereitgestellte Disaggregationsbibliothek verwendet werden.
Java Alles außer Java Direkte SDK-Verwendung N/A Ja Aggregation muss deaktiviert werden.
Java Java 1.3.x N/A Ja Aggregation muss deaktiviert werden.
Java Java 1.4.x Prüfpunkt-Aufruf ohne Argumente Ja Keine
Java Java 1.4.x Prüfpunkt-Aufruf mit expliziter Sequenznummer Ja Entweder muss die Aggregation deaktiviert oder der Code so geändert werden, dass erweiterte Sequenznummern für das Setzen von Prüfpunkten verwendet werden.
Java Alles außer Java 1.3.x + mehrsprachiger Daemon + sprachspezifischer Wrapper N/A Ja Aggregation muss deaktiviert werden.