Skip to content

Latest commit

 

History

283 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kafka Client

This is a Kafka client written in pure Rust.

It uses kafka-protocol for the protocol implementation, and tokio for async io.

Features

  • Multiplexed, async IO
  • Client-side load balancing
  • Connection retry with exponential backoff
  • Generic over the IO channel
  • Custom partitioning strategies

Architecture

architecture diagram

To Do

  • Producer

    • Implement idempotent producer
    • Implement transactions
  • Consumer

  • Respect the throttle time returned by the server.

  • Other questions:

    • What is the difference between offset and sequence in the context of a ProduceRequest?
  • Benchmarking

  • More tracing

  • More tests

About

A pure-rust kafka client

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages