日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

浅谈Redis

發布時間:2025/3/14 数据库 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 浅谈Redis 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Redis,內存中的數據結構存儲,作為數據庫,緩存和消息代理。它支持的數據結構,如字符串、哈希表、列表、設置、排序設置范圍查詢,位圖,hyperloglogs和半徑查詢地理信息的索引。

使用內置的復制,Lua腳本,LRU逐出,磁盤上的持久性交易和不同等級,并且可以通過Redis的前哨和自動分區Redis集群高可用性。為了實現其出色的表現,Redis是工作在內存中的數據集

實現簡單的讀寫

一、新建一個控制臺項目

1、NuGet安裝

2、寫入

ConnectionMultiplexer con = RedisConnection.Connection; IDatabase db = con.GetDatabase(1);//不寫默認是連接到數據庫0 Student st = new Student { Age=12,Name="yuan",School="TaiKang"}; db.Set("student",st);

3、效果如圖

4、讀取

ConnectionMultiplexer con = RedisConnection.Connection;IDatabase db = con.GetDatabase(1);//不寫默認是連接到數據庫0Student st = new Student();st = db.Get<Student>("student");

二、輔助類

1、實體

[Serializable]public class Student{public int ID { get; set; }public string Name { get; set; }public int Age { get; set; }public string School { get; set; }}

2、鏈接數據庫(Redis)

public class RedisConnection{private static readonly Lazy<ConnectionMultiplexer> _connection = new Lazy<ConnectionMultiplexer>(() => ConnectionMultiplexer.Connect("localhost:6379"));public static ConnectionMultiplexer Connection { get { return _connection.Value; } }}

3、方法

public static class RedisExtension{public static TResult Get<TResult>(this IDatabase cache, string key){return Deserialize<TResult>(cache.StringGet(key));}public static void Set<TIn>(this IDatabase cache, string key, TIn value){cache.StringSet(key, Serialize(value));}static byte[] Serialize(object o){if (o == null)return null;BinaryFormatter binaryFormatter = new BinaryFormatter();using (MemoryStream mStream = new MemoryStream()){binaryFormatter.Serialize(mStream, o);byte[] objectDataAsStream = mStream.ToArray();return objectDataAsStream;}}static TResult Deserialize<TResult>(byte[] stream){if (stream == null)return default(TResult);BinaryFormatter formatter = new BinaryFormatter();using (MemoryStream memStream = new MemoryStream(stream)){TResult result = (TResult)formatter.Deserialize(memStream);return result;}}}

?

轉載于:https://www.cnblogs.com/shiyige-216/p/8682655.html

總結

以上是生活随笔為你收集整理的浅谈Redis的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。