8000 GitHub - eblocha/kafka-client: A pure-rust kafka client
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

eblocha/kafka-client

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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 automatic retry in a way that can guarantee message order
    • Implement idempotent producer
    • Implement transactions
  • Consumer

    • Figure out how groups actually work
  • Respect the throttle time returned by the server.

  • Other questions:

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

  • More tracing

  • More tests

About

A pure-rust kafka client

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0