本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用非 Java 语言通过 KCL 开发消费端
本节介绍如何在 Python、 Node.js .NET 和 Ruby 中使用 Kinesis 客户端库 (KCL) 实现消费者。
KCL 属于 Java 库。使用名为 MultiLangDaemon 的多语言接口提供对 Java 以外语言的支持。当您使用 KCL Java-based 和 Java 以外的其他语言时,此守护程序将在后台运行。因此,如果您安装了适用于非 Java 语言的 KCL 并完全在非 Java 语言中编写消费端应用程序,则由于 MultiLangDaemon,您仍需要在您的系统中安装 Java。此外,MultiLangDaemon 存在部分默认设置,您可能需要根据自己的使用案例自定义此类设置(例如所连接到的 AWS 区域)。有关MultiLangDaemon上的更多信息 GitHub,请参阅 KCL MultiLangDaemon 项目
虽然各语言的核心概念一致,但也有一些针对具体语言的注意事项和实现。有关 KCL 消费端开发的核心概念,请参阅使用 Java 通过 KCL 开发消费端。有关如何在 Python Node.js、.NET 和 Ruby 中开发 KCL 消费者以及最新更新的更多详细信息,请参阅以下 GitHub 存储库:
-
Python:amazon-kinesis-client-python
-
Node.js: amazon-kinesis-client-nodejs
重要
如果使用的是 JDK 8,请勿使用以下非 Java KCL 库版本。这些版本包含与 JDK 8 不兼容的依赖项(logback)。
-
KCL Python 3.0.2 和 2.2.0
-
KCL 2.3.0 Node.js
-
KCL .NET 3.1.0
-
KCL Ruby 2.2.0
使用 JDK 8 时,我们建议使用在这些受影响版本之前或之后发布的版本。