Fast Redis-compatible server in Rust.
cargo runDefault address: 127.0.0.1:6379
Set a password:
FEDIS_PASSWORD=secret cargo runConnect:
redis-cli -a secretdocker build -t fedis .
docker run --rm -p 6379:6379 fedisFEDIS_HOST/FEDIS_PORT/FEDIS_LISTENFEDIS_PASSWORD,FEDIS_USERNAME,FEDIS_USERSFEDIS_DATA_PATH,FEDIS_AOF_PATH,FEDIS_AOF_FSYNC=always|everysec|noFEDIS_SNAPSHOT_PATH,FEDIS_SNAPSHOT_INTERVAL_SECFEDIS_MAX_CONNECTIONS,FEDIS_MAX_REQUEST_BYTES,FEDIS_IDLE_TIMEOUT_SECFEDIS_MAXMEMORY_BYTESFEDIS_METRICS_ADDR(Prometheus-style text endpoint)FEDIS_CONFIG(KEY=VALUEfile)FEDIS_LOG=info|debug|warn|error
- Strings:
GET,SET,MGET,MSET,INCR,DECR,APPEND,GETRANGE,SETRANGE - JSON v1:
JSON.SET,JSON.GET,JSON.DEL,JSON.TYPE(root path only) - Keyspace/expiry:
DEL,UNLINK,EXISTS,KEYS,SCAN,EXPIRE,TTL,PERSIST - Server:
INFO,PING,ECHO,BGREWRITEAOF,BGSAVE,SAVE,LASTSAVE,ACL,MODULE
- DB
0only - RESP2 primary, RESP3 map response for
HELLO 3 - Persistence: AOF + optional snapshots
- Hardening knobs: connection limit, request size limit, idle timeout, optional maxmemory guard
python3 benchmarks/run_bench.py
python3 benchmarks/run_bench_concurrent.py
python3 benchmarks/run_suite.py
python3 benchmarks/check_regression.pySee ROADMAP.md for compatibility tracking.
Deployment guide: DEPLOY.md.