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
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. |