#dynamo-db #aws #dynamodbstreams

dynamo-subscriber

将 DynamoDB Streams 订阅为 tokio-stream

2 个版本

0.1.1 2023年11月28日
0.1.0 2023年11月27日

#1261数据库接口

MIT 许可证

54KB
988

dynamo-subscriber

Version License Test

DynamoDB Streams 订阅为 tokio-stream

概述

此库是 DynamoDB Streams 的包装器,允许将其用作 tokio-stream。如果您想了解 tokio-stream 是什么以及如何使用它,请参阅 此文档

示例

在此示例中,流对象订阅 dynamodb 流并从中接收记录。

[dependencies]
dynamo-subscriber = "0.1.0"

aws-config = "1.0.1"
tokio = { version = "1", features = ["macros", "rt-multi-thread"] }
tokio-stream = "0.1.14"
use aws_config::BehaviorVersion;
use dynamo_subscriber as subscriber;
use tokio_stream::StreamExt;

// This example assumes that the dynamodb-local instance is running on localhost:8000
// and "People" table exists.

#[tokio::main]
async fn main() {
    let config = aws_config::load_defaults(BehaviorVersion::latest())
        .await
        .into_builder()
        .endpoint_url("https://127.0.0.1:8000")
        .build();

    let client = subscriber::Client::new(&config);
    let mut stream = subscriber::stream::builder()
        .table_name("People")
        .client(client)
        .build();

    while let Some(records) = stream.next().await {
        println!("{:#?}", records);
    }
}

许可证

此项目采用 MIT 许可证

依赖项

~21MB
~365K SLoC