当前位置:   article > 正文

C#中Redis使用简单教程_c# redis

c# redis

C#开发者的Redis入门指南

Redis是一个高性能的内存数据库,常用于缓存、队列、实时数据分析等场景。作为一个C#开发者,了解如何使用Redis可以为你的应用程序带来巨大的好处。本文将向你介绍Redis基本概念,并提供一些C#的代码示例来帮助你入门。

一、Redis简介

        Redis是一个开源的高级键值存储系统,可以在内存中存储数据,并通过持久化机制将数据保存到磁盘上。Redis支持多种数据结构,如字符串、哈希、列表、集合和有序集合等。它提供了丰富的功能,如发布/订阅、事务、Lua脚本和复制等。

二、安装和配置Redis

        在使用Redis之前,首先需要安装Redis服务器。你可以从Redis官方网站(https://redis.io)下载最新版本的Redis并进行安装。

        安装完成后,打开Redis的配置文件(redis.conf),根据需要修改一些设置。例如,你可以通过修改"port"字段来更改服务器的监听端口,默认为6379。你还可以配置密码以提高安全性。

三、使用C#连接Redis

        在C#中,可以使用StackExchange.Redis库来连接Redis服务器。这是Redis官方推荐的C#客户端库,提供了简单易用的API,可轻松地与Redis进行交互。

        首先,你需要安装StackExchange.Redis库。在Visual Studio中,可以通过NuGet包管理器来安装。搜索StackExchange.Redis并选择安装即可。

下面是一个使用C#连接Redis并进行基本操作的示例:

  1. namespace RedisDemo
  2. {
  3. public class Program
  4. {
  5. static void Main(string[] args)
  6. {
  7. //创建连接
  8. ConnectionMultiplexer redis = ConnectionMultiplexer.Connect("127.0.0.1:6379");
  9. //ConnectionMultiplexer redis = ConnectionMultiplexer.Connect("127.0.0.1:6379,password = 123456");
  10. //获取数据库
  11. IDatabase database = redis.GetDatabase();
  12. //IDatabase database = redis.GetDatabase(1);//可以设置想连的redis的哪一个库
  13. //存储键值对
  14. database.StringSet("name", "value1");
  15. //存List<Student>集合
  16. var list = new List<Student>
  17. {
  18. new Student { id = 1, name = "立白", age = 20 },
  19. new Student { id = 2, name = "妄为", age = 40 },
  20. new Student { id = 3, name = "毒妇", age = 60 }
  21. };
  22. foreach (var item in list)
  23. {
  24. var hashEntries = new HashEntry[]
  25. {
  26. new HashEntry("ID", item.id),
  27. new HashEntry("Name", item.name),
  28. new HashEntry("Age", item.age)
  29. };
  30. database.HashSet(item.id.ToString(), hashEntries);
  31. }
  32. database.KeyExpire("1", TimeSpan.FromSeconds(3));//设置键为“1”的那条数据的超时时间:3秒
  33. 获取键值对
  34. //var redisValue = database.StringGet("name");
  35. //Console.WriteLine(redisValue.ToString());
  36. 删除键值对
  37. //bool result = database.KeyDelete("name");
  38. //var value = database.StringGet("name");
  39. //Console.WriteLine("删除结果:" + result.ToString());
  40. 删除键为123
  41. //database.KeyDelete("1");
  42. //database.KeyDelete("2");
  43. //database.KeyDelete("3");
  44. //关闭redis
  45. redis.Close();
  46. Console.ReadLine();
  47. }
  48. }
  49. public class Student
  50. {
  51. public int id { get; set; }
  52. public string name { get; set; }
  53. public int age { get; set; }
  54. }
  55. }

注意: 连接redis时,需要先打开redis-server.exe服务(双击启动服务)

双击闪退的时候,需要进入redis目录,输入cmd进入命令窗口。然后输入redis-server.exe redis.windows.conf回车,redis服务端就启动成功了(命令窗口关闭后服务也会关闭)

服务闪退原因参考:https://blog.csdn.net/SurepMan/article/details/131569019

四、Redis的应用场景

  1. 缓存:将常用的数据存储在Redis中,可以大大提高访问速度和系统吞吐量。
  2. 队列:使用Redis的列表数据结构,可以实现简单而高性能的消息队列。
  3. 实时数据分析:通过Redis的有序集合等数据结构,实现对实时数据的快速分析和查询。
  4. 分布式锁:利用Redis的原子操作,可以实现简单而高效的分布式锁机制。

五、Redis桌面管理工具

        可以安装客户端 redis-desktop-manager对Redis可视化管理

Redis开机自启设置:redis-server --service-install redis.windows-service.conf(进入redis目录,输入cmd进入命令窗口,然后输入此指令)

参考: https://blog.csdn.net/qq_38398634/article/details/110245754

六、总结

        详细数据类型存储可以参考:https://www.cnblogs.com/wl-blog/p/17260810.html

        客户端 redis-desktop-manager对Redis可视化管理在文章顶部资源即可下载,也可以去官网下载。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/289107
推荐阅读
相关标签
  

闽ICP备14008679号