Hasty Briefsbeta

双语

Show HN: Rust macro utility for batching expensive async operations

9 months ago
  • #batching
  • #Rust
  • #async
  • Rust宏工具'batched',用于批量处理高开销的异步操作
  • 支持'limit'、'concurrent'和'window'等配置选项进行批处理
  • 目标函数必须是异步函数,且接受Vec<T>类型的单一参数
  • 返回值根据函数返回类型进行克隆或从迭代器中提取
  • 需要tokio异步运行时,且不能在结构体内部使用
  • 包含用于批量请求的tracing spans,并支持OpenTelemetry的关联span功能
  • 提供了与PostgreSQL配合使用的批量插入消息示例
  • 通过SharedError处理非Clone错误类型的错误