#event-sourcing #postgresql #event-store #eventide

message_db

Postgres 的微服务原生消息和事件存储

9 个版本

0.1.0 2022年12月13日
0.0.8 2021年6月20日
0.0.6 2021年4月14日

#2022数据库接口

每月 33 次下载

MIT/Apache

67KB
1K SLoC

消息数据库

Rust 客户端,用于 Postgres 的微服务原生事件存储和消息存储

一个功能齐全的事件存储和消息存储,用于 Pub/Sub、事件源、消息传递和事件驱动的微服务应用程序,实现于 PostgreSQL。

更多信息,请参阅 Message DB 项目页面。 https://github.com/message-db/message-db

许可

本项目采用 MIT OR Apache-2.0 许可。

贡献

欢迎贡献!


lib.rs:

消息数据库

Rust 客户端,用于 Postgres 的微服务原生事件存储和消息存储

一个功能齐全的事件存储和消息存储,用于 Pub/Sub、事件源、消息传递和事件驱动的微服务应用程序,实现于 PostgreSQL。

更多信息,请参阅 Message DB 项目页面。 https://github.com/message-db/message-db

示例

use message_db::database::{MessageStore, WriteMessageOpts};
use serde_json::json;

// Connect to MessageDb
let message_store = MessageStore::connect("postgres://postgres:password@localhost:5432/postgres").await?;

// Get last stream message
let last_message = MessageStore::get_last_stream_message(&message_store, "account-123", None).await?;

// Write message
let last_message = MessageStore::write_message(
    &message_store,
    "account-123",
    "AccountOpened",
    &json!({ "initial_balance": 0 }),
    &WriteMessageOpts::default(),
).await?;

依赖项

~2–16MB
~205K SLoC