示例代码:
不使用连接池
using System.Collections.Generic;using System.Linq;using System.Text;using ServiceStack.Redis;using System;namespace ConsoleApplication1{class Program{static void Main(string[] args){string host = "10.xx.xx.46";//实例访问 host 地址int port = 6379;// 端口信息string instanceId = "bd87dadc-8xx1-4xx1-86dd-021xxxcde96";//实例 IDstring pass = "1234567q";//密码RedisClient redisClient = new RedisClient(host, port, instanceId + ":" + pass);string key = "name";string value = "QcloudV5!";redisClient.Set(key, value); //设置值System.Console.WriteLine("set key:[" + key + "]value:[" + value + "]");string getValue = System.Text.Encoding.Default.GetString(redisClient.Get(key)); //读取值System.Console.WriteLine("value:" + getValue);System.Console.Read();}}}
使用 ServiceStack 4.0 连接池
using System.Collections.Generic;using System.Linq;using System.Text;using ServiceStack.Redis;using System;namespace ConsoleApplication2{class Program{static void Main(string[] args){string[] testReadWriteHosts = new[] {"redis://:fb92bxxxabf11e5:1234xx8a1A@10.x.x.1:6379"/*redis://:实例ID:密码@访问地址:端口*/};RedisConfig.VerifyMasterConnections = false;//需要设置PooledRedisClientManager redisPoolManager = new PooledRedisClientManager(10/*连接池个数*/,10/*连接池超时时间*/, testReadWriteHosts);for (int i = 0; i < 100; i++){IRedisClient redisClient = redisPoolManager.GetClient();//获取连接RedisNativeClient redisNativeClient = (RedisNativeClient)redisClient;redisNativeClient.Client = null;//需要设置try{string key = "test1111";string value = "test1111";redisClient.Set(key, value);redisClient.Dispose();//}catch (Exception e){System.Console.WriteLine(e.Message);}}System.Console.Read();}}}
使用ServiceStack 3.0 连接池
using System.Collections.Generic;using System.Linq;using System.Text;using ServiceStack.Redis;using System;namespace ConsoleApplication3{class Program{static void Main(string[] args){string[] testReadWriteHosts = new[] {"fb92bfxxbf11e5:123456xx1A@10.x.x.1:6379" /*实例ID:密码@访问地址:端口*/};PooledRedisClientManager redisPoolManager = new PooledRedisClientManager(10/*连接池个数*/, 10/*连接池超时时间*/, testReadWriteHosts);for (int i = 0; i < 100; i++){IRedisClient redisClient = redisPoolManager.GetClient();//获取连接try{string key = "test1111";string value = "test1111";redisClient.Set(key, value);redisClient.Dispose();//}catch (Exception e){System.Console.WriteLine(e.Message);}}System.Console.Read();}}}
运行结果: