Kafka Clients¶
This section describes the clients included with Confluent Platform.
Confluent Platform includes client libraries for multiple languages that provide both low-level access to Apache Kafka® and higher level stream processing.
Examples | API reference | GitHub |
---|---|---|
C/C++ Client | C/C++ | librdkafka |
Go Client | Go | confluent-kafka-go |
Java Client | Java | apache-kafka-java |
.NET Client | .NET | confluent-kafka-dotnet |
Python Client | Python | confluent-kafka-python |
Feature Support¶
The following tables describes the client support for various Confluent Platform features.
Feature | C/C++ | Go | Java | .NET | Python |
---|---|---|---|---|---|
Admin API | Yes | Yes | Yes | Yes | Yes |
Control Center metrics integration | Yes | Yes | Yes | Yes | Yes |
Custom partitioner | Yes | No | Yes | No | No |
Exactly Once Semantics | Yes | Yes | Yes | Yes | Yes |
Idempotent Producer | Yes | Yes | Yes | Yes | Yes |
Kafka Streams | No | No | Yes | No | No |
Record Headers | Yes | Yes | Yes | Yes | Yes |
SASL Kerberos/GSSAPI | Yes | Yes | Yes | Yes | Yes |
SASL PLAIN | Yes | Yes | Yes | Yes | Yes |
SASL SCRAM | Yes | Yes | Yes | Yes | Yes |
SASL OAUTHBEARER | Yes | Yes | Yes | No | No |
Simplified installation | Yes | Yes | Yes | Yes | Yes |
Schema Registry | Yes | No | Yes | Yes | Yes |
Topic Metadata API | Yes | Yes | Yes | Yes | Yes |
Other Languages¶
There are many other programming languages that provide Kafka client libraries as well. Refer to confluentinc/examples GitHub repository for client code written in the following programming languages and tools. These “Hello, World!” examples produce to and consume from Confluent Cloud, and for the subset of languages that support it, there are additional examples using Confluent Cloud Schema Registry and Avro.
- C
- Clojure
- Confluent CLI
- C-sharp
- Go
- Groovy
- Java
- Java Spring Boot
- Kafka commands
- Kafka connect datagen
- kafkacat
- Kotlin
- KSQL datagen
- Node.js
- Python
- Ruby
- Rust
- Scala