美文网首页
redis6集群+代理(redis cluster proxy)

redis6集群+代理(redis cluster proxy)

作者: 耗子_aca3 | 来源:发表于2023-05-08 00:31 被阅读0次
  • 假设有ip为192.168.1.2 192.168.1.3 192.168.1.4三台服务器,用来部署redis6集群;还有ip为192.168.1.5 机器用来部署redis cluster proxy;所有服务器都是ubuntu~

部署redis集群

  1. 在 192.168.1.2、192.168.1.3 和 192.168.1.4 上安装 Redis 6 并配置集群
    配置:
# 安装 Redis 6
sudo apt-get update
sudo apt-get install redis-server

# 编辑配置文件 /etc/redis/redis.conf,添加以下配置
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
appendonly yes

# 重启 Redis
sudo systemctl restart redis

  1. 初始化集群(高可用的话建议每个节点用一主两从)
redis-cli --cluster create 192.168.1.2:6379 192.168.1.3:6379 192.168.1.4:6379

部署redis cluster proxy集群

  1. 在 192.168.1.5安装 redis cluster proxy
# 安装依赖
apt-get install gcc make libevent-dev

# 下载和编译 redis cluster proxy
git clone https://github.com/RedisLabs/redis-cluster-proxy.git
make && make install
  1. 编辑 redis cluster proxy配置文件 proxy.conf,找到注释并添加集群的ip:port
# You can also specify multiple entry-points, by adding more lines, ie:
cluster 192.168.1.2:6379
cluster 192.168.1.3:6379
cluster 192.168.1.4:6379
  1. 在 192.168.1.5上启动 redis cluster proxy(高可用的话建议用三个节点,前面挂负载均衡)
./redis-cluster-proxy -c ./proxy.conf 

golang版本使用示例

package main

import (
    "context"
    "fmt"
    "github.com/go-redis/redis/v8"
    "time"
)

func main() {
    // 创建Redis客户端
    client := redis.NewClient(&redis.Options{
        // 连接redis cluster proxy的地址和端口
        Addr:        "192.168.1.5:7777", 
        DialTimeout: 5 * time.Second,
        ReadTimeout: 5 * time.Second,
    })

    // 设置一个键值对
    err := client.Set(context.Background(), "key", "value", 0).Err()
    if err != nil {
        panic(err)
    }

    // 获取键对应的值
    val, err := client.Get(context.Background(), "key").Result()
    if err != nil {
        panic(err)
    }
    fmt.Println("key:", val)
}

相关文章

网友评论

      本文标题:redis6集群+代理(redis cluster proxy)

      本文链接:https://www.haomeiwen.com/subject/ueqksdtx.html