针对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:{
相关推荐
一嘴一个橘子2 分钟前
redis.windows.conf 的 保护模式
redis
Leon-Ning Liu32 分钟前
【真实经验分享】OGG抽取进程报错 ORA-07445 [kgherrordmp()+986] ORA-00600 [17114]分析步骤
运维·数据库
CCPC不拿奖不改名36 分钟前
Redis 工程化部署深度解析
linux·服务器·数据库·redis·深度学习·缓存·rag
吴声子夜歌1 小时前
SQL进阶——自连接
数据库·sql
云贝教育-郑老师1 小时前
TDSQL(MySQL版)分布式事务实现机制深度解析:从两阶段提交到全局一致性读
数据库·sql
gb448oww51 小时前
Redis分布式锁进阶第三十五篇
数据库·redis·分布式
Full Stack Developme2 小时前
正则表达式设计及工作原理
数据库·mysql·正则表达式
云飞云共享云桌面2 小时前
搭建10人SolidWorks云设计环境:云飞云在非标自动化工厂的实测方案
运维·服务器·网络·数据库·自动化·电脑
A-刘晨阳2 小时前
关键基础设施安全底座:自主可控时序大模型TimechoAI的国产化实践与深度时序分析能力
大数据·数据库·安全·时序数据库
深盾科技_Virbox2 小时前
Virbox Protector 从何而来:深盾科技的软件保护演进
运维·数据库·科技