数据库 | 类型 | 线程模型 | 吞吐量 (QPS) | 延迟 (μs) | 内存效率 | 适用场景 | 兼容性 |
---|---|---|---|---|---|---|---|
Memcached | 纯内存键值存储 | 多线程 | 100K - 500K | 10 - 100 | 高 | 缓存、会话存储 | 无原生密码认证 |
DragonflyDB | 多协议内存数据库 | 多线程 | 1M+ | 50 - 200 | 中高 | 高吞吐缓存、Redis 替代 | 兼容 Redis |
KeyDB | Redis 多线程分支 | 多线程 | 500K - 1M | 50 - 150 | 中 | 需要 Redis 兼容的多线程场景 | 完全兼容 Redis |
Skytable | NoSQL 数据库 | 单线程/多线程 | 100K - 300K | 100 - 500 | 高 | 结构化数据存储 | 不兼容 Redis |
Valkey | Redis 分支 | 单线程 | 300K - 800K | 50 - 200 | 中高 | Redis 替代、低延迟场景 | 完全兼容 Redis |
apiVersion: apps/v1
kind: Deployment
metadata:
name: valkey-deployment
namespace: default
labels:
app: valkey
spec:
replicas: 1
selector:
matchLabels:
app: valkey
template:
metadata:
labels:
app: valkey
spec:
containers:
- name: valkey
image: registry.cn-hangzhou.aliyuncs.com/qiluo-images/valkey
args: ["--bind", "0.0.0.0", "--port", "6379"] # 容器内监听6379
ports:
- containerPort: 6379
resources:
limits:
memory: "2Gi"
cpu: "1"
requests:
memory: "1Gi"
cpu: "0.5"
securityContext:
capabilities:
add: ["IPC_LOCK"]
restartPolicy: Always
---
apiVersion: v1
kind: Service
metadata:
name: valkey-service
namespace: default
spec:
type: NodePort
ports:
- port: 6379 # Service端口
targetPort: 6379 # 容器端口
nodePort: 30381 # 外部访问端口
selector:
app: valkey
镜像指定:
x86镜像的image: registry.cn-hangzhou.aliyuncs.com/qiluo-images/valkey
arm镜像的image: registry.cn-hangzhou.aliyuncs.com/qiluo-images/linux_arm64_valkey
端口映射:
容器内端口:6379
NodePort 外部端口:30381
Service 端口:6379(集群内访问)
资源限制:
内存限制 2Gi,请求 1Gi
CPU 限制 1核,请求 0.5核
部署步骤
1. 应用配置
kubectl apply -f valkey-deployment.yaml
2. 检查部署状态
kubectl get deployments -l app=valkey
3. 查看服务详情(确认30381端口已开放)
kubectl get svc valkey-service
4. 测试连接(假设节点IP为192.168.1.100)
redis-cli -h 192.168.1.100 -p 30381 PING