A Amazon Kinesis Client Library (KCL) para Java permite que os desenvolvedores Java consumam e processem facilmente dados dos fluxos de dados da Amazon Kinesis.
Depois de baixar o código do GitHub, você pode construí -lo usando o MAVEN. Para desativar a assinatura de GPG na compilação, use este comando: mvn clean install -Dgpg.skip=true
. Nota: Este comando não executa testes de integração.
Para desativar os testes de unidade em execução na compilação, adicione a propriedade -Dskip.ut=true
.
Observe que a execução de testes de integração cria recursos da AWS. Os testes de integração requerem credenciais válidas da AWS. Isso procurará um perfil AWS padrão especificado em seus .aws/credentials
locais. Para executar todos os testes de integração: mvn verify -DskipITs=false
. Para executar um teste de integração, especifique a classe de teste de integração: mvn -Dit.test="BasicStreamConsumerIntegrationTest" -DskipITs=false verify
opcionalmente, você pode fornecer o nome de um usuário/função do IAM para executar testes como uma string usando este comando: mvn -DskipITs=false -DawsProfile="<PROFILE_NAME>" verify
.
Para desenvolvedores do lado do produtor usando a Kinesis Producer Library (KPL) , o KCL se integra sem esforço adicional. Quando o KCL recupera um registro agregado da Amazon Kinesis que consiste em vários registros de usuário do KPL, ele invocará automaticamente o KPL para extrair os registros individuais do usuário antes de devolvê -los ao usuário.
Para facilitar a redação dos desenvolvedores em outros idiomas, implementamos um daemon baseado em Java, chamado Multilangdaemon, que faz todo o levantamento pesado. Nossa abordagem tem o daemon gerar um subprocesso, que por sua vez administra o processador de registros, que pode ser escrito em qualquer idioma. O processo multilangdaemon e o subprocessador do processador de registros se comunicam entre si sobre o stdin e o stdout usando um protocolo definido. Haverá uma correspondência de um a um entre processadores de registros, processos filhos e fragmentos. Para os desenvolvedores do Python especificamente, abstraímos esses detalhes da implementação e expôs uma interface que permite que você se concentre na redação da lógica de processamento de registros no Python. Essa abordagem permite que o KCL seja agnóstico da linguagem, fornecendo recursos idênticos e modelo de processamento paralelo semelhante em todos os idiomas.
A maneira recomendada de usar o KCL para Java é consumi -lo do Maven.
< dependency >
< groupId >software.amazon.kinesis</ groupId >
< artifactId >amazon-kinesis-client</ artifactId >
< version >3.0.1</ version >
</ dependency >
Versão 2.x ramo de rastreamento
< dependency >
< groupId >software.amazon.kinesis</ groupId >
< artifactId >amazon-kinesis-client</ artifactId >
< version >2.6.0</ version >
</ dependency >
Versão 1.x rastreamento de rastreamento
< dependency >
< groupId >com.amazonaws</ groupId >
< artifactId >amazon-kinesis-client</ artifactId >
< version >1.14.1</ version >
</ dependency >
Importante, recomendamos o uso da versão mais recente do KCL para melhorar o desempenho e o suporte.
Versão kcl | Changelog |
---|---|
3.x | mestre/changelog.md |
2.x | v2.x/changelog.md |
1.x | v1.x/changelog.md |
Recomendamos os clientes para migrar para 1.14.1 ou mais recente para evitar bugs conhecidos na versão 1.14.0
É altamente recomendado para usuários da versão 2.0 do cliente Amazon Kinesis para atualizar para a versão 2.0.3 ou posterior. Um bug foi identificado em versões antes do 2.0.3 que pode fazer com que os registros sejam entregues ao processador de registro errado. **
Ajude -nos a melhorar a biblioteca de clientes da Kinesis! Seu envolvimento é crucial para melhorar a biblioteca de clientes da Kinesis. Convidamos você a se juntar à nossa comunidade e contribuir das seguintes maneiras:
Ao participar desses canais, você desempenha um papel vital na formação do futuro da biblioteca de clientes da Kinesis. Valorizamos sua entrada e esperamos colaborar com você!