eventure

Crates.ioeventure
lib.rseventure
version0.0.17
sourcesrc
created_at2024-05-01 18:41:36.131141
updated_at2024-05-10 20:56:38.453983
descriptionEvent-Driven messaging library for Rust
homepage
repositoryhttps://github.com/rust-lang-libs/eventure
max_upload_size
id1226695
size47,202
P.Marat (pmarat-dev)

documentation

https://docs.rs/eventure

README

Event-Driven messaging library for Rust

crates.io crates.io docs workflow dependency

It's an early alpha version, not ready for production yet.

The main goal of the project is to create a library with one model abstraction and different implementations for a variety of message brokers, like Kafka, RabbitMQ, Iggy, custom In-memory, etc... Ideally, the library should be able to handle all possible event-driven oriented scenarios, both for modular monolith and distributed applications (microservices, typically).

Release notes

Building project

cargo build

Testing project

cargo test

Examples

Running examples

Getting started

cargo run --example getting-started

In-Memory messages

Run examples:

cargo run --example in-memory
cargo run --example in-memory-multi-threaded

Kafka messages

Install docker and docker-compose on local machine, start kafka containers:

cd tools\kafka
docker-compose up -d

Create topic 'orders':

kafka-topics --bootstrap-servers localhost:9092 --create --topic orders

Run examples:

cargo run --example kafka
cargo run --example kafka-many-handlers
Commit count: 82

cargo fmt