Redis远程链接应用案例

1.配置文件设置

打开配置文件redis.windows.conf,配置以下内容:

1.bind 0.0.0.0(设置所有IP可访问)

2.requirepass 1234.com(密码设置)

3.protected-mode no(远程可访问)

2.防火墙配置入站规则,端口号6379

3.安全组配置,开放6379

4.C#代码案例-字符串读写

复制代码
 public static void WriteandReadString()
 {
     // 连接字符串,根据实际Redis地址和端口调整
     string connectionString = "41.162.118.219:6379,password=1234.com";
     ConnectionMultiplexer connection = ConnectionMultiplexer.Connect(connectionString);
     IDatabase redis = connection.GetDatabase();

     // 设置字符串键值对
     redis.StringSet("myStringKey", "Hello, Redis!");

     // 获取字符串值
     string value = redis.StringGet("myStringKey");
     Console.WriteLine($"获取的值为: {value}");

     connection.Close();
 }

5.C#代码案例-哈希读写

复制代码
 public static void WriteandReadHash()
 {
     // 连接字符串,根据实际Redis地址和端口调整
     string connectionString = "41.162.118.219:6379,password=1234.com";
     ConnectionMultiplexer connection = ConnectionMultiplexer.Connect(connectionString);
     IDatabase redis = connection.GetDatabase();

     // 设置哈希字段值
     redis.HashSet("myHashKey", new HashEntry[] {
     new HashEntry("field1", "value3"),
     new HashEntry("field2", "value2")
    });

     // 获取单个哈希字段值
     string field1Value = redis.HashGet("myHashKey", "field1");
     Console.WriteLine($"哈希字段field1的值为: {field1Value}");

     // 获取所有哈希字段和值
     HashEntry[] hashEntries = redis.HashGetAll("myHashKey");
     foreach (var entry in hashEntries)
     {
         Console.WriteLine($"哈希字段: {entry.Name}, 值: {entry.Value}");
     }
     connection.Close();
 }

6.C#代码案例-集合读写

复制代码
  public static void WriteandReadJiHe()
  {
      // 连接字符串,根据实际Redis地址和端口调整
      string connectionString = "41.162.118.219:6379,password=1234.com";
      ConnectionMultiplexer connection = ConnectionMultiplexer.Connect(connectionString);
      IDatabase redis = connection.GetDatabase();


      // 向集合添加元素
      redis.SetAdd("mySetKey", "member1");
      redis.SetAdd("mySetKey", "member2");

      // 获取集合所有成员
      RedisValue[] members = redis.SetMembers("mySetKey");
      foreach (var member in members)
      {
          Console.WriteLine($"集合成员: {member}");
      }

      connection.Close();
  }

7.有序集合读写

复制代码
  public static void WriteandReadSortedSet()
  {
      // 连接字符串,根据实际Redis地址和端口调整
      string connectionString = "41.162.118.209:6379,password=1234.com";
      ConnectionMultiplexer connection = ConnectionMultiplexer.Connect(connectionString);
      IDatabase redis = connection.GetDatabase();

      // 向有序集合添加元素及分值
      redis.SortedSetAdd("mySortedSetKey", "item1", 5);
      redis.SortedSetAdd("mySortedSetKey", "item2", 3);

      // 获取元素排名
      //long rank = 0;
      // rank = redis.SortedSetRank("mySortedSetKey", "item2");
      //Console.WriteLine($"元素item2的排名为: {rank}");

      //connection.Close();

      long? rank = 0;
      rank = redis.SortedSetRank("mySortedSetKey", "item2");
      Console.WriteLine($"元素的排名为: {rank}");
      connection.Close();
  }
相关推荐
名字还没想好☜21 分钟前
Go 并发实战:用 channel 实现 worker pool
java·数据库·后端·golang·go
huaqianzkh40 分钟前
DevExpress TreeList 右键菜单踩坑复盘:空白区域正常、节点右键弹出控件自带菜单解决方案
c#
nVisual1 小时前
nVisual:AI驱动的智能排障,平均响应时间缩短40%
android·人工智能·缓存
源图客1 小时前
Claude Code基础使用
服务器·前端·数据库
阿拉斯攀登1 小时前
RAG 性能优化:缓存、批量与并发
人工智能·缓存·性能优化·embedding·agent·loop·rag
白帽小丑10 小时前
# 一次 MySQL DELETE 误操作的数据恢复尝试实录
数据库·mysql
贪玩的蛋挞12 小时前
C#与闭包
开发语言·c#
Quincy_Freak13 小时前
信创内网数据规范实践:银河麒麟下SQLite本地数据安全管理方案
数据库·sqlite·arm·数据库管理·大数据分析·银河麒麟·aarch64
2601_9626838915 小时前
治理遗留系统中的“生肉 SQL”:一次用多模型协作优化慢查询的实战复盘
数据库·人工智能·sql
酱学编程15 小时前
【从零到一实现一个 AI Agent 框架 · 第四篇】04. 任务规划:拆解复杂目标 -
服务器·网络·数据库·人工智能