Important

You are viewing documentation for an older version of Confluent Platform. For the latest, click here.

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 No No Yes No No
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 No 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. To see examples of producers and consumers written in various languages, including Ruby, Node.js, and Scala, see the Confluent examples repo.