Integrando o KPL com o Producer Code - Amazon Kinesis Data Streams

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Integrando o KPL com o Producer Code

A Kinesis Producer Library (KPL) é executada em um processo separado e se comunica com seu processo de usuário principal usando o IPC. Essa arquitetura, às vezes chamada de microsserviço, é escolhida por dois motivos principais:

1) Seu processo de usuário não falhará mesmo se o KPL falhar

Seu processo pode ter tarefas não relacionadas ao Kinesis Data Streams e pode continuar a operação mesmo se o KPL falhar. Também é possível que seu processo de usuário principal reinicie o KPL e se recupere para um estado totalmente funcional (essa funcionalidade está nos invólucros oficiais).

Um exemplo é um servidor web que envia métricas para o Kinesis Data Streams; o servidor pode continuar servindo páginas mesmo que a parte do Kinesis Data Streams tenha parado de funcionar. Travar o servidor inteiro devido a um bug no KPL causaria, portanto, uma interrupção desnecessária.

2) Clientes arbitrários podem ser aceitos

Há sempre clientes que usam linguagens diferentes das oficialmente aceitas. Esses clientes também devem poder usar o KPL facilmente.

Matriz de uso recomendado

A matriz de uso a seguir enumera as configurações recomendadas para diferentes usuários e informa se e como você deve usar o KPL. Lembre-se de que, se a agregação estiver habilitada, será preciso usar a desagregação para extrair seus registros no lado do consumidor.

Linguagem do lado do produtor Linguagem do lado do consumidor Versão KCL Lógica do ponto de verificação É possível usar o KPL? Advertências
Tudo menos Java * * * Não N/D
Java Java Usa o Java SDK diretamente N/D Sim Se a agregação for usada, você precisará usar a biblioteca de desagregação fornecida após as chamadas a GetRecords.
Java Tudo menos Java Usa o SDK diretamente N/D Sim É preciso desabilitar a agregação.
Java Java 1.3.x N/D Sim É preciso desabilitar a agregação.
Java Java 1.4.x Chama o ponto de verificação sem argumento algum Sim Nenhum
Java Java 1.4.x Chama o ponto de verificação com um número sequencial explícito Sim Desative a agregação ou altere o código para usar números sequenciais estendidos para definir pontos de verificação.
Java Tudo menos Java 1.3.x + daemon de várias linguagens + wrapper específico de linguagem N/D Sim É preciso desabilitar a agregação.