Integração da KPL com o código de produtor - 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á.

Integração da KPL com o código de produtor

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

1) O processo do usuário não falhará mesmo que a KPL falhe

O processo pode ter tarefas não relacionadas ao Kinesis Data Streams e continuar em operação mesmo que a KPL falhe. Além disso, o processo de usuário pai pode reiniciar a KPL e recuperar um estado totalmente funcional (essa funcionalidade está nos wrappers oficiais).

Um exemplo é um servidor Web que envia métricas ao Kinesis Data Streams. O servidor pode continuar entregando páginas mesmo que a parte do Kinesis Data Streams tenha parado de funcionar. Portanto, falhar todo o servidor devido a um erro na KPL seria 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 ser capazes de usar a KPL facilmente.

Matriz de uso recomendado

A matriz de uso a seguir enumera as configurações recomendadas para diferentes usuários e indica se e como você deve usar a 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 da KCL Lógica do ponto de verificação Você pode usar a 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.