| Crates.io | dht-crawler |
| lib.rs | dht-crawler |
| version | 0.0.6 |
| created_at | 2026-01-16 11:54:05.451622+00 |
| updated_at | 2026-01-18 15:09:11.524336+00 |
| description | 高性能的 Rust DHT (Distributed Hash Table) 爬虫库 | A high-performance Rust DHT crawler library for fetching torrent information from the BitTorrent DHT network |
| homepage | |
| repository | https://github.com/0xddy/dht-crawler |
| max_upload_size | |
| id | 2048480 |
| size | 147,397 |
一个高性能的 Rust DHT(分布式哈希表)爬虫库,用于爬取 BitTorrent DHT 网络中的种子信息。
在 Cargo.toml 中添加依赖:
[dependencies]
dht-crawler = "0.0.6"
或者查看 crates.io 获取最新版本号。
如果需要使用 Prometheus 指标支持,可以启用 metrics feature:
[dependencies]
dht-crawler = { version = "0.0.6", features = ["metrics"] }
本库支持以下可选特性:
mimalloc - 高性能内存分配器使用 mimalloc 作为全局内存分配器,可以显著降低内存占用(通常降低 10-30%),特别适合长时间运行的高并发场景。
metrics - Prometheus 指标支持启用 metrics feature 后,库会通过 metrics crate 暴露统计指标,可以与 Prometheus 等监控系统集成。
注意:
mimalloc 和 metrics-exporter-prometheus 仅在编译 example 时可用(位于 dev-dependencies)metrics feature(通过 [dependencies] 中的可选依赖)请参考 examples/main.rs 查看完整的使用示例。
# Debug 模式
cargo build --example dht_crawler_example
# Release 模式
cargo build --release --example dht_crawler_example
# Debug 模式
cargo build --example dht_crawler_example --features mimalloc
# Release 模式(推荐用于生产环境)
cargo build --release --example dht_crawler_example --features mimalloc
# 启用 metrics feature
cargo build --example dht_crawler_example --features metrics
# Release 模式
cargo build --release --example dht_crawler_example --features metrics
# Debug 模式
cargo build --example dht_crawler_example --features mimalloc,metrics
# Release 模式(推荐)
cargo build --release --example dht_crawler_example --features mimalloc,metrics
# 编译 Linux 版本(推荐使用 mimalloc 以获得更好的内存性能)
cargo build --release --target x86_64-unknown-linux-gnu --examples --features mimalloc,metrics
# 编译后的可执行文件位于:
# target/x86_64-unknown-linux-gnu/release/examples/dht_crawler_example
⚠️ 重要说明:交叉编译特性支持
- 使用
cargo build --lib编译库时,仅支持metrics可选特性mimallocfeature 仅在编译 examples 时可用(位于dev-dependencies)- 如果需要同时使用
mimalloc和metrics,请使用cargo build --examples编译示例
cargo run --example dht_crawler_example
cargo run --example dht_crawler_example --features mimalloc
启用 metrics 后,Prometheus metrics 导出器会在 http://localhost:9000/metrics 启动。
cargo run --example dht_crawler_example --features metrics
然后在浏览器或使用 curl 访问:
curl http://localhost:9000/metrics
cargo run --example dht_crawler_example --features mimalloc,metrics
[dependencies]
dht-crawler = "0.0.6"
[dependencies]
dht-crawler = { version = "0.0.6", features = ["metrics"] }
这样可以在你的代码中使用库暴露的 metrics 指标。
⚠️ 重要说明:特性支持限制
--lib编译库时:仅支持metrics可选特性mimallocfeature:仅用于编译 examples(位于dev-dependencies),库本身不依赖 mimalloc- 如果需要同时使用
mimalloc和metrics,请使用--examples编译示例程序
MIT License