Crate baichun_framework_rms

Source
Expand description

§Baichun Framework RMS (Rust Message System)

baichun-framework-rms 是一个高性能、可扩展的消息系统模块,为 Baichun Framework 提供统一的消息传递接口。 该模块支持多种消息中间件,包括 Kafka、RabbitMQ(计划中)和 Redis Pub/Sub(计划中)等。

§主要特性

  • 统一的消息传递接口
  • 支持多种消息中间件
  • 异步消息处理
  • 可靠的消息传递保证
  • 灵活的消息路由
  • 完善的错误处理

§快速开始

use baichun_framework_rms::bind;

async fn example() {
    // 创建消息通道
    let channel = bind!(factory, config);

    // 发送消息
    let producer = bind!(producer factory, config);
    producer.send("topic", "Hello, World!").await.unwrap();

    // 消费消息
    let consumer = bind!(consumer factory, config);
    consumer.subscribe("topic", |msg| {
        println!("Received: {:?}", msg);
        Ok(())
    }).await.unwrap();
}

Re-exports§

pub use error::Error;
pub use message::channel::MessageChannel;
pub use message::channel::MessageChannelFactory;
pub use message::consumer::MessageConsumer;
pub use message::converter::MessageConverter;
pub use message::producer::MessageProducer;
pub use message::types::AckCallback;
pub use message::types::AcknowledgeableMessage;
pub use message::types::Message;
pub use message::types::MessageHeaders;
pub use result::Result;

Modules§

error
错误处理模块
message
result
结果类型定义模块

Macros§

bind
用于创建消息通道的便捷宏