针对net core 使用CSRedis 操作redis的三种连接实例方式

1、主从访问

2、哨兵模式

3、集群访问

cs 复制代码
写法一:写任意一个地址即可,其它节点在运行过程中自动增加,确保每个节点密码一致。如:
        Console.WriteLine("集群测试");
        RedisHelper.Initialization(new CSRedis.CSRedisClient("192.168.20.66:6379,password=123456,defaultDatabase=0"));
        RedisHelper.Set("name1", "ypf1"); //对应的槽位在6384端口上
        RedisHelper.Set("name2", "ypf2"); //对应的槽位在6379端口上
        var data1 = RedisHelper.Get<String>("name1");
        var data2 = RedisHelper.Get<String>("name2");
        Console.WriteLine($"data1={data1}");
        Console.WriteLine($"data2={data2}");
        Console.WriteLine("执行完毕");
cs 复制代码
写法二
        {
                Console.WriteLine("集群测试");
                var csredis = new CSRedis.CSRedisClient(null,
                            "192.168.137.202:6379,password=123456,defaultDatabase=0",
                            "192.168.137.202:6380,password=123456,defaultDatabase=0",
                            "192.168.137.202:6381,password=123456,defaultDatabase=0",
                            "192.168.137.202:6382,password=123456,defaultDatabase=0",
                            "192.168.137.202:6383,password=123456,defaultDatabase=0",
                            "192.168.137.202:6384,password=123456,defaultDatabase=0");
                RedisHelper.Initialization(csredis);

                RedisHelper.Set("name1", "ypf1");     //对应的槽位在6384端口上
                RedisHelper.Set("name2", "ypf2");     //对应的槽位在6379端口上
                var data1 = RedisHelper.Get<String>("name1");
                var data2 = RedisHelper.Get<String>("name2");
                Console.WriteLine($"data1={data1}");
                Console.WriteLine($"data2={data2}");

                Console.WriteLine("执行完毕");
cs 复制代码
 ConfigurationOptions sentinelOptions = new ConfigurationOptions();
            sentinelOptions.EndPoints.Add("180.76.*.*", 26379);
            sentinelOptions.EndPoints.Add("180.76.*.*", 26380);
            sentinelOptions.EndPoints.Add("180.76.*.*", 26381);
            sentinelOptions.TieBreaker = "";
            sentinelOptions.CommandMap = CommandMap.Sentinel;
            sentinelOptions.AbortOnConnectFail = false;
            // Connect!
            ConnectionMultiplexer sentinelConnection = ConnectionMultiplexer.Connect(sentinelOptions);

            // Get a connection to the master
            ConfigurationOptions redisServiceOptions = new ConfigurationOptions();
            redisServiceOptions.ServiceName = "mymaster1";   //master名称
            redisServiceOptions.Password = "redis_pwd";     //master访问密码
            redisServiceOptions.AbortOnConnectFail = true;
            ConnectionMultiplexer masterConnection = sentinelConnection.GetSentinelMasterConnection(redisServiceOptions);

            var db  = masterConnection.GetDatabase();
            var value= db.StringGet("testKey");
            Console.WriteLine($"[Use StackExchange-Redis] The remote redis-sentinel test key value:{
相关推荐
LightYoungLee4 分钟前
GR 生成式召回
运维·服务器·数据库
optimistic_chen8 分钟前
【Redis 系列】常用数据结构---List类型
linux·数据结构·redis·笔记·list·xsheel
galaxyffang8 分钟前
跨表OR导致SQL查询中断&慢查询优化(UNION ALL改造方案)
数据库·sql
清风6666669 分钟前
基于单片机的N型热电偶PID锅炉温度控制系统
数据库·单片机·mongodb·毕业设计·课程设计·期末大作业
蜂蜜黄油呀土豆10 分钟前
深入理解 Redis 集群架构:主从同步、哨兵机制与 Cluster 原理
redis·集群·cap·主从复制·哨兵机制·redis cluster
阿拉伯柠檬11 分钟前
文章数量测试
数据库
yesyesyoucan13 分钟前
智能配置推荐系统:基于需求分析的电脑硬件优化方案生成平台
数据库·需求分析
LF3_18 分钟前
Centos7,搭建Hive3.1.3数据库
大数据·数据库·hive
qq_4557608519 分钟前
redis - 哨兵
数据库·redis
打不了嗝 ᥬ᭄3 小时前
【MySQL】内置函数和内外连
数据库·mysql