分布式部署
Memorose 支持基于 Raft 的复制式部署,也可以通过仓库自带脚本在本地启动集群。
推荐本地集群启动
./scripts/start_cluster.sh start --clean --build
典型本地拓扑:
- 后端节点
3000、3001、3002 - dashboard UI
3100
集群管理接口
POST /v1/cluster/initializePOST /v1/cluster/joinDELETE /v1/cluster/nodes/:node_id
Join 请求体
{
"node_id": 2,
"address": "127.0.0.1:5002"
}
初始化示例
curl -s -X POST http://127.0.0.1:3000/v1/cluster/initialize \
-H "Authorization: Bearer $TOKEN"
Join 示例
curl -s -X POST http://127.0.0.1:3000/v1/cluster/join \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"node_id": 2,
"address": "127.0.0.1:5002"
}'
运维说明
- 单机模式下,join/leave 操作本地 raft group
- 分片模式下,这些操作会分发到所有 shard group
- 写请求内置 leader forwarding,但前提仍然是集群拓扑健康