#事件溯源 #事件存储 #事件 #持久化 #流式处理

stroming

流存储的特质,带有内存实现

10 个版本

0.0.10 2022年8月1日
0.0.9 2022年8月1日
0.0.7 2022年7月31日

#12#事件存储

MIT 许可证

22KB
414

Stroming

一套用于从流存储中读取和写入的特质,以及内存实现。此项目主要属于学术性质。

查看文档 查看软件包

使用

[dependencies]
stroming = "0.0.10"
let mut store = MemoryStreamStore::new();
let data = r#"{"test": "data"}"#.as_bytes().to_vec();
let msg = Message {
    message_type: "TestMessage".to_owned(),
    data,
    metadata: vec![],
};

let _ = store.write_to_stream("TestStream-1", StreamVersion::NoStream, &[msg]);

let (version, messages) = store.read_from_stream("TestStream-1", ReadDirection::Forwards);

assert_eq!(version, StreamVersion::Revision(0));
assert_eq!(messages.len(), 1);
assert_eq!(messages[0].message_type, "TestMessage");

许可证

MIT

依赖

~225KB