m0_67672429 2023-03-17 06:58 采纳率: 80%
浏览 52
已结题

node链接redis分片集群

redis版本6.2.6,node中redis包版本4.6.4,用私网搭建的集群,假如有4台,redis密码都是abc以及未设置用户名,主1公网是1.1.1.1:6379,主1私网是2.2.2.2:6379,主1从公网是3.3.3.3:6379,主1从私网是4.4.4.4:6379。主2公网是5.5.5.5:6379,主2私…,主2从公…,主2从私…,
https://github.com/redis/node-redis/blob/master/docs/clustering.md
注意集群是私网搭建的,带有密码abc以及未设置用户名,redis包版本4.6.4的node读写分离链接集群格式应该怎么写?

  • 写回答

6条回答 默认 最新

  • 谁在墙外等红杏 企业官方账号 2023-03-17 09:29
    关注

    以下是基于Node.js的读写分离链接集群代码示例,其中使用了redis包版本4.6.4:

    const Redis = require('redis');
    const cluster = require('redis-cluster');
    
    const options = {
      redisOptions: {
        password: 'abc'
      }
    };
    
    const nodes = [
      {host: '2.2.2.2', port: 6379},
      {host: '4.4.4.4', port: 6379},
      {host: '5.5.5.5', port: 6379},
      {host: '7.7.7.7', port: 6379}
    ];
    
    const clusterClient = cluster.createCluster(nodes, options);
    
    // 读取数据
    clusterClient.get('key', (err, result) => {
      console.log(result);
    });
    
    // 写入数据
    clusterClient.set('key', 'value', (err, result) => {
      console.log(result);
    });
    

    其中,options中的redisOptions对象包含了redis密码的配置。nodes数组中包含了所有节点的信息,其中第一个节点为主节点,其他为从节点。需要注意的是,私网搭建的集群无法直接通过公网访问,因此主节点和从节点的公网地址无法使用。在这种情况下,可以使用私网地址进行访问。

    同时,由于未设置用户名,因此在连接时不需要进行认证。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

问题事件

  • 系统已结题 3月27日
  • 已采纳回答 3月19日
  • 创建了问题 3月17日

悬赏问题

  • ¥30 关于#java#的问题,请各位专家解答!
  • ¥30 vue+element根据数据循环生成多个table,如何实现最后一列 平均分 合并
  • ¥20 pcf8563时钟芯片不启振
  • ¥20 pip2.40更新pip2.43时报错
  • ¥15 换yum源但仍然用不了httpd
  • ¥50 C# 使用DEVMOD设置打印机首选项
  • ¥15 麒麟V10 arm安装gdal
  • ¥20 OPENVPN连接问题
  • ¥15 flask实现搜索框访问数据库
  • ¥15 mrk3399刷完安卓11后投屏调试只能显示一个设备