bitcapybara / budmq

A simple distributed pub/sub MQ inspired by Apache Pulsar

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

budmq

Features

  • Server and Client are provided as crates
  • Network transport layer based on QUIC protocol
    • connection reconnect
    • stream pool
    • request pipeline
  • distributed deployment
    • each broker can be deployed independently
  • custom storage implementation
    • MetaStorage for meta data
    • MessageStorage for topic messages

Usage

  1. generate cert files
./certs/generate_certs.sh
  1. see examples for details:

Custom storage

need to impl two storage trait:

  • MetaStorage: used to store all brokers' meta data
  • MessageStorage: used to store all messages received from producers and consume cursors for each subscription

About

A simple distributed pub/sub MQ inspired by Apache Pulsar

License:MIT License


Languages

Language:Rust 99.3%Language:Shell 0.5%Language:Makefile 0.2%