标签:dwr 释放内存 create image system col har span gen
一,引入dll
1.ServiceStack.Common.dll
2.ServiceStack.Interfaces.dll
3.ServiceStack.Redis.dll
4.ServiceStack.Text.dll
二,修改配置文件
在你的配置文件中加入如下的代码:
<appSettings> <add key="RedisPath" value="127.0.0.1:6379"/> todo:这里配置自己redis的ip地址和端口号 </appSettings>
二,用到的工具类
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using ServiceStack.Redis; 6 namespace RedisDemo 7 { 8 /// <summary> 9 /// RedisManager类主要是创建链接池管理对象的 10 /// </summary> 11 public class RedisManager 12 { 13 /// <summary> 14 /// redis配置文件信息 15 /// </summary> 16 private static string RedisPath = System.Configuration.ConfigurationSettings.AppSettings["RedisPath"]; 17 private static PooledRedisClientManager _prcm; 18 /// <summary> 19 /// 静态构造方法,初始化链接池管理对象 20 /// </summary> 21 static RedisManager() 22 { 23 CreateManager(); 24 } 25 /// <summary> 26 /// 创建链接池管理对象 27 /// </summary> 28 private static void CreateManager() 29 { 30 _prcm = CreateManager(new string[] { RedisPath }, new string[] { RedisPath }); 31 } 32 private static PooledRedisClientManager CreateManager(string[] readWriteHosts, string[] readOnlyHosts) 33 { 34 //WriteServerList:可写的Redis链接地址。 35 //ReadServerList:可读的Redis链接地址。 36 //MaxWritePoolSize:最大写链接数。 37 //MaxReadPoolSize:最大读链接数。 38 //AutoStart:自动重启。 39 //LocalCacheTime:本地缓存到期时间,单位:秒。 40 //RecordeLog:是否记录日志,该设置仅用于排查redis运行时出现的问题,如redis工作正常,请关闭该项。 41 //RedisConfigInfo类是记录redis连接信息,此信息和配置文件中的RedisConfig相呼应 42 // 支持读写分离,均衡负载 43 return new PooledRedisClientManager(readWriteHosts, readOnlyHosts, new RedisClientManagerConfig 44 { 45 MaxWritePoolSize = 5, // “写”链接池链接数 46 MaxReadPoolSize = 5, // “读”链接池链接数 47 AutoStart = true, 48 }); 49 } 50 private static IEnumerable<string> SplitString(string strSource, string split) 51 { 52 return strSource.Split(split.ToArray()); 53 } 54 /// <summary> 55 /// 客户端缓存操作对象 56 /// </summary> 57 public static IRedisClient GetClient() 58 { 59 if (_prcm == null) 60 { 61 CreateManager(); 62 } 63 return _prcm.GetClient(); 64 } 65 } 66 }
三,main方法执行存储操作与读取操作
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using ServiceStack.Redis; 6 using ServiceStack.Redis.Support; 7 namespace RedisDemo 8 { 9 class Program 10 { 11 static void Main(string[] args) 12 { 13 try 14 { 15 //获取Redis操作接口 16 IRedisClient Redis = RedisManager.GetClient(); 17 //放入内存 18 Redis.Set<string>("my_name", "小张"); 19 Redis.Set<int>("my_age", 12); 20 //保存到硬盘 21 Redis.Save(); 22 //释放内存 23 Redis.Dispose(); 24 //取出数据 25 Console.WriteLine("取出刚才存进去的数据 \r\n 我的Name:{0}; 我的Age:{1}.", 26 Redis.Get<string>("my_name"), Redis.Get<int>("my_age")); 27 Console.ReadKey(); 28 } 29 catch (Exception ex) 30 { 31 Console.WriteLine(ex.Message.ToString()); 32 Console.ReadKey(); 33 } 34 } 35 } 36 }
完活,下面是运行后的结果
转 https://www.jb51.net/article/117194.htm
标签:dwr 释放内存 create image system col har span gen
原文地址:https://www.cnblogs.com/anyihen/p/12830509.html