La bibliothèque client Amazon Kinesis (KCL) pour Java permet aux développeurs Java de consommer et de traiter facilement les données à partir des flux de données d'Amazon Kinesis.
Après avoir téléchargé le code à partir de GitHub, vous pouvez le construire à l'aide de Maven. Pour désactiver la signature GPG dans la construction, utilisez cette commande: mvn clean install -Dgpg.skip=true . Remarque: cette commande n'exécute pas de tests d'intégration.
Pour désactiver les tests unitaires en cours dans la construction, ajoutez la propriété -Dskip.ut=true .
Notez que l'exécution de tests d'intégration crée des ressources AWS. Les tests d'intégration nécessitent des informations d'identification AWS valides. Cela recherchera un profil AWS par défaut spécifié dans vos .aws/credentials locaux. Pour exécuter tous les tests d'intégration: mvn verify -DskipITs=false . Pour exécuter un test d'intégration, spécifiez la classe de test d'intégration: mvn -Dit.test="BasicStreamConsumerIntegrationTest" -DskipITs=false verify Facultally, vous pouvez fournir le nom d'un utilisateur / rôle IAM pour exécuter des tests avec une chaîne à l'aide de cette commande: mvn -DskipITs=false -DawsProfile="<PROFILE_NAME>" verify .
Pour les développeurs producteurs utilisant la bibliothèque de producteur de Kinesis (KPL) , le KCL s'intègre sans effort supplémentaire. Lorsque le KCL récupère un enregistrement agrégé de la kinésis Amazon composé de plusieurs enregistrements utilisateur KPL, il invoquera automatiquement le KPL pour extraire les enregistrements utilisateur individuels avant de les renvoyer à l'utilisateur.
Pour faciliter les développeurs d'écrire des processeurs d'enregistrements dans d'autres langues, nous avons implémenté un démon basé sur Java, appelé MullangDaemon qui fait tout le levage. Notre approche a le Daemon Spawn un sous-processus, qui à son tour exécute le processeur d'enregistrements, qui peut être écrit dans n'importe quelle langue. Le processus MullangDaemon et le sous-processus du processeur d'enregistrement communiquent entre eux sur STDIN et STDOUT en utilisant un protocole défini. Il y aura une correspondance à un parmi les processeurs enregistrés, les processus enfants et les éclats. Pour les développeurs Python en particulier, nous avons résumé ces détails d'implémentation et exposer une interface qui vous permet de vous concentrer sur l'écriture de la logique de traitement des enregistrements dans Python. Cette approche permet à KCL d'être un langage agnostique, tout en fournissant des caractéristiques identiques et un modèle de traitement parallèle similaire dans toutes les langues.
La façon recommandée d'utiliser le KCL pour Java est de le consommer à partir de maven.
< dependency >
< groupId >software.amazon.kinesis</ groupId >
< artifactId >amazon-kinesis-client</ artifactId >
< version >3.0.1</ version >
</ dependency >Branche de suivi de la version 2.x
< dependency >
< groupId >software.amazon.kinesis</ groupId >
< artifactId >amazon-kinesis-client</ artifactId >
< version >2.6.0</ version >
</ dependency >Version 1.x Branche de suivi
< dependency >
< groupId >com.amazonaws</ groupId >
< artifactId >amazon-kinesis-client</ artifactId >
< version >1.14.1</ version >
</ dependency >IMPORTANT Nous vous recommandons d'utiliser la dernière version KCL pour améliorer les performances et la prise en charge.
| Version KCL | Changelog |
|---|---|
| 3.x | Master / ChangeLog.md |
| 2.x | v2.x / changelog.md |
| 1.x | v1.x / changelog.md |
Nous recommandons aux clients de migrer vers 1.14.1 ou plus récent pour éviter les bogues connus dans la version 1.14.0
Il est fortement recommandé pour les utilisateurs de la version 2.0 du client Amazon Kinesis de passer à la version 2.0.3 ou version ultérieure. Un bogue a été identifié dans les versions avant 2.0.3 qui pourraient entraîner la livraison des enregistrements au mauvais processeur d'enregistrement. **
Aidez-nous à améliorer la bibliothèque des clients de Kinesis! Votre implication est cruciale pour améliorer la bibliothèque client de Kinesis. Nous vous invitons à rejoindre notre communauté et à contribuer de la manière suivante:
En participant à travers ces canaux, vous jouez un rôle essentiel dans la formation de l'avenir de la bibliothèque client de kinésis. Nous apprécions votre contribution et nous sommes impatients de collaborer avec vous!