51个版本 (27个重大更改)
0.35.1 | 2024年5月14日 |
---|---|
0.34.0 | 2024年3月4日 |
0.33.0 | 2023年11月7日 |
0.31.0 | 2023年7月25日 |
0.0.1 | 2020年6月17日 |
#24 在 网络编程
每月下载量70,725
用于 65 个包(28个直接使用)
690KB
12K SLoC
动机
Rust可能是NATS生态系统看到的最有趣的新语言之一。我们相信这个客户端将对NATS、分布式系统以及嵌入式和物联网环境产生重大影响。使用Rust,我们希望尽可能遵循语言的习惯用法,并利用语言的优势。我们将许多原本应在运行时进行检查的错误和异常移至编译器中,特别是连接选项,以及由于迭代器在Rust中是一等公民,所以让订阅生成多种风格的迭代器。我们还希望与NATS的简单、安全、快速的理念保持一致!
客户端
在两个独立的包中有两个客户端可用
async-nats
基于Async Tokio的NATS客户端。
支持
- 核心NATS
- JetStream API
- JetStream管理API
- 键值存储
- 对象存储
- 服务API
API是稳定的,但仍然处于0.x.x版本,因为异步生态系统仍在引入许多改进。一些依赖项也被认为是稳定的,但版本号小于1.0.0,例如rustls
,这可能会引入一些破坏性更改,从而以某种方式影响用户。
功能标志
功能标志在Cargo.toml
中已记录,并可在此处查看。
nats
过时的同步客户端,支持
- 核心NATS
- JetStream API
- JetStream管理API
- 键值存储
- 对象存储
除非是安全修复,否则此客户端不会获得更新。请使用新的async-nats
包。
文档
请参阅每个crate的文档以获取API参考和示例。
此外,请查看NATS by example - 一个不断演变的、可运行的、跨客户端的NATS参考示例集合。
反馈
我们鼓励所有在NATS和Rust生态系统中的朋友帮助我们改进这个库。请提出问题、提交PR等。我们也在NATS的Slack上的rust
频道上提供支持!
依赖项
~19–45MB
~1M SLoC