5 个版本 (3 个重大更改)
使用旧的 Rust 2015
0.4.0 | 2017 年 10 月 19 日 |
---|---|
0.3.1 | 2017 年 4 月 24 日 |
0.3.0 | 2017 年 3 月 20 日 |
0.2.0 | 2017 年 3 月 1 日 |
0.1.0 | 2016 年 10 月 15 日 |
#21 在 #name-service
每月 72 次下载
52KB
911 代码行
抽象名称服务
状态:测试版
这个 Rust 包提供抽象特质,可用于构建可互操作的名录发现实现。
我们希望 abstract_ns 不仅实现基于 DNS 的名录发现,还包括 Zookeeper、Eureka、Etcd、Consul 以及其他你可能想象得到的东西。所有这些都可以轻松配置和交换。
特性
- 定义了名称和服务的发现结果是什么
- 使用 futures-rs 处理异步操作
- 具有接收更新(名称更改)的接口
- 允许某种名称服务路由,即可以指定不同名称的不同解析器,例如:从本地 consul 提供服务
*.consul
,其他名称从常规 DNS 服务器。
此存储库还包含以下包
ns-std-threaded
使用线程池中的 stdlib 解析器运行的名录解析实现ns-dns-tokio
使用domain
包在tokio-core
主循环中异步解析域的纯 Rust 实现
注意:abstract-ns v0.2 与 v0.1 是非常不同的产品
许可证
以下任一许可证下许可
- Apache 许可证版本 2.0,(./LICENSE-APACHE 或 http://www.apache.org/licenses/LICENSE-2.0)
- MIT 许可证 (./LICENSE-MIT 或 http://opensource.org/licenses/MIT) 由你选择。
贡献
除非你明确声明,否则任何有意提交以包含在作品中的贡献,根据 Apache-2.0 许可证定义,均将按照上述方式双重许可,不附加任何额外条款或条件。
lib.rs
:
此包提供了一个基于 domain
包的简单名称解析器
domain
包旨在成为任何 DNS 的一站式解决方案。尽管如此,abstract-ns
仍然提供基于不同服务(以及名称和解析器之间映射)的更新订阅和发现。
使用此包
- 作为更高效的
ns-std-threaded
(请注意!) - 用于基于 DNS 的名称解析(目前还没有 SRV)
依赖项
~9MB
~149K SLoC