Skip to content

Asyncio-based Python library for working with aiokafka, Confluent Schema Registry, and Kafka Broker APIs.

License

Notifications You must be signed in to change notification settings

lsst-sqre/kafkit

Repository files navigation

Kafkit

Kafkit helps you write Kafka producers and consumers in Python with asyncio:

  • Kafkit provides a client for the Confluent Schema Registry's HTTP API. The RegistryApi client includes both high-level methods for managing subjects and schemas in a Registry, and direct low-level access to HTTP methods (GET, POST, PUT, PATCH, and DELETE). The high-level methods use caching so you can use the client as an integral part of your application's schema management. RegistryApi is implemented around aiohttp, but since the base class is designed with a sans IO architecture, a Registry client can be implemented with any asyncio HTTP library.

  • Kafkit provides Avro message serializers and deserializers that integrate with the Confluent Schema Registry: Deserializer, Serializer, and PolySerializer.

  • The RecordNameSchemaManager is a streamlined tool for serializing messages using the schemas maintained by your app, while also integrating with the Confluent Schema Registry.

  • The kafkit.ssl module helps you connect to SSL-secured Kafka brokers.

Learn more about Kafkit at https://kafkit.lsst.io.

About

Asyncio-based Python library for working with aiokafka, Confluent Schema Registry, and Kafka Broker APIs.

Topics

Resources

License

Stars

Watchers

Forks