Files
dht/Cargo.toml
T
2025-12-22 21:32:14 +08:00

60 lines
1.4 KiB
TOML

[package]
name = "dht_crawler"
version = "3.0.0"
edition = "2021"
[dependencies]
tokio = { version = "1.35", features = ["full"] }
serde = { version = "1.0", features = ["derive"] }
serde_bencode = "0.2" # 更成熟的 bencode 库,支持 UTF-8
sha1 = "0.10"
hex = "0.4"
rand = "0.8"
log = "0.4"
tracing = "0.1.43"
tracing-subscriber = { version = "0.3", features = ["env-filter", "fmt"] }
tracing-appender = "0.2"
tracing-log = "0.2"
thiserror = "1.0"
socket2 = { version = "0.5", features = ["all"] }
rbit = "0.1"
bytes = "1.0"
mimalloc = "0.1"
bloomfilter = "1.0"
ahash = "0.8" # 快速哈希算法(比 SHA1 快 10倍+)
# 可选:用于 Web API
actix-web = { version = "4.4", optional = true }
encoding_rs = { version = "0.8.35", optional = true }
serde_bytes = "0.11.19"
[features]
default = []
web = ["actix-web"]
encoding = ["dep:encoding_rs"]
# ==================== 性能优化配置 ====================
[profile.release]
opt-level = 3 # 最高优化级别
lto = "fat" # 链接时优化(LTO)- 显著提升性能
codegen-units = 1 # 单编译单元 - 更好的优化但编译慢
panic = "abort" # panic时直接终止 - 减少二进制大小
strip = true # 移除调试符号 - 减小二进制
# 开发时快速编译
[profile.dev]
opt-level = 0
debug = true
# 性能测试配置
[profile.bench]
inherits = "release"
debug = true # 保留符号以便性能分析