[package]
name = "rat_memcache"
version = "0.2.4"
edition = "2024"
authors = ["0ldm0s <oldmos@gmail.com>"]
description = "高性能 Memcached 协议兼容服务器,支持双层缓存和持久化存储"
repository = "https://github.com/0ldm0s/rat_memcache"
license = "LGPL-3.0-or-later"
readme = "README.md"
homepage = "https://github.com/0ldm0s/rat_memcache"
documentation = "https://docs.rs/rat_memcache"
keywords = ["memcached", "cache", "server", "database", "performance"]
categories = ["caching", "database", "network-programming", "memory-management"]
[[bin]]
name = "rat_memcached"
path = "src/bin/rat_memcached.rs"
doc = false
required-features = ["server"]
[dependencies]
rat_logger = "0.2.8"
melange_db = { version = "0.2.5", optional = true }
lz4 = "1.24"
tokio = { version = "1.0", features = ["full"] }
serde = { version = "1.0", features = ["derive"] }
bincode = "2.0"
tempfile = "3.8"
chrono = { version = "0.4", features = ["serde"] }
dashmap = "5.5"
parking_lot = "0.12"
thiserror = "1.0"
anyhow = "1.0"
crossbeam = "0.8"
fxhash = "0.2"
bytes = "1.5"
toml = "0.8"
clap = "4.4"
sysinfo = "0.30"
[target.'cfg(unix)'.dependencies]
libc = "0.2"
mimalloc = { version = "0.1", optional = true, default-features = false }
[target.'cfg(windows)'.dependencies]
windows-sys = { version = "0.52", features = ["Win32_Networking_WinSock"] }
mimalloc = { version = "0.1", optional = true, default-features = false }
[features]
default = ["cache-lib", "ttl-support"]
cache-lib = []
server = ["full-features"]
full-features = ["cache-lib", "ttl-support", "metrics", "melange-storage", "lz4-compression", "mimalloc-allocator"]
ttl-support = []
metrics = []
melange-storage = ["melange_db"]
lz4-compression = []
mimalloc-allocator = ["mimalloc"]
compression-none = ["melange_db/compression-none"]
compression-lz4 = ["melange_db/compression-lz4"]
compression-zstd = ["melange_db/compression-zstd"]
[dev-dependencies]
tokio-test = "0.4"
criterion = "0.5"
tempfile = "3.8"