#amazon-sqs #queue #listener #aws #consumer #error-message

sqslisten

SQSListen,一个简单的 AWS SQS 队列监听器。它允许您将监听器设置到您的 AWS SQS 队列中,该监听器将请求队列中的可用消息,并在接收到消息时调用传递的处理程序。一旦接收到并处理了消息(无论处理程序是否返回错误),消息将从队列中删除。

2 个版本

0.1.1 2019 年 5 月 8 日
0.1.0 2019 年 5 月 1 日

#1325开发工具

MIT 许可证

9KB
105 代码行

SQSListen,一个简单的 AWS SQS 队列监听器。

Build Status

它允许您将监听器设置到您的 AWS SQS 队列中,该监听器将请求队列中的可用消息,并在接收到消息时调用传递的处理程序。一旦接收到并处理了消息(无论处理程序是否返回错误),消息将从队列中删除。

安装

[dependencies]
sqslisten = "0.1"

用法

use sqslisten::{ReceiveMessageRequest, Region, SQSListen};
use std::{thread, time};

fn main() {
    let mut sqs_listener = SQSListen::new(Region::UsEast1);
    let handle = sqs_listener.listen(
        ReceiveMessageRequest {
            queue_url: "<queue_url>".to_string(),
            ..ReceiveMessageRequest::default()
        },
        |msg, err| {
            match msg {
                Some(message) => println!("Message received: {:?}", message),
                None => {}
            }

            match err {
                Some(error) => println!("Error received: {:?}", error),
                None => {}
            }

            return Ok(());
        },
    );

    let ten_seconds = time::Duration::from_millis(100000);
    thread::sleep(ten_seconds);

    handle.stop();
}

依赖项

~19MB
~357K SLoC