#nats-client #nats #messaging #api #distributed-systems #client #api-bindings

async-nats-wrpc

async-nats 库的分支,具有更低级别的异步支持

1 个不稳定版本

0.35.1 2024 年 7 月 1 日

#519网络编程 中排名

Download history 223/week @ 2024-06-28 449/week @ 2024-07-05 1414/week @ 2024-07-12 2000/week @ 2024-07-19 2485/week @ 2024-07-26 2232/week @ 2024-08-02 1825/week @ 2024-08-09 2818/week @ 2024-08-16

9,865 每月下载量
用于 13 个包(11 个直接使用)

Apache-2.0

695KB
12K SLoC

A Rust 客户端,用于 NATS 消息系统

动机

Rust 可能是 NATS 生态系统见过的最有意思的新语言之一。我们相信这个客户端将对 NATS、分布式系统和嵌入式以及 IoT 环境产生重大影响。我们希望尽可能使用 Rust 的语言特性,并利用其优势。我们将许多原本应在运行时检查和错误移至编译器中,最显著的是连接选项,以及由于迭代器在 Rust 中是一等公民,因此让订阅生成多种风格的迭代器。我们还希望与 NATS 的简单、安全、快速的理念保持一致!

客户端

有两个客户端,分别位于两个不同的包中

async-nats

License Apache 2 Crates.io Documentation Build Status

基于 Async Tokio 的 NATS 客户端。

支持

  • 核心 NATS
  • JetStream API
  • JetStream 管理API
  • 键值存储
  • 对象存储
  • 服务 API

API 稳定,但仍然处于 0.x.x 版本,因为异步生态系统仍在引入许多易用性改进。我们的某些依赖项也被认为是稳定的,但版本小于 1.0.0,例如 rustls,这可能会引入影响我们用户的破坏性更改。

功能标志

功能标志在 Cargo.toml 中进行了文档化,可以在 此处 查看。

nats

License Apache 2 Crates.io Documentation Build Status

支持同步的旧版客户端

  • 核心 NATS
  • JetStream API
  • JetStream 管理API
  • 键值存储
  • 对象存储

该客户端不会接收更新,除非是安全修复。请使用新的 async-nats 包。

文档

请参考每个包的文档以获取API参考和示例。

此外,请查看 NATS示例 - NATS的可运行、跨客户端参考示例集。

反馈

我们鼓励NATS和Rust生态系统中的所有人帮助我们改进这个库。请打开问题,提交PR等。我们也在 NATS的Slack 上的 rust 频道上有空!

依赖项

~20–45MB
~1M SLoC