Net连接示例
最近更新时间: 2024-10-17 17:10:00
运行前必备: 下载并安装 ServiceStack.Redis。
示例代码:
- 不使用连接池
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.66.82.46";//实例访问host地址
int port = 6379;// 端口信息
string instanceId = "bd87dadc-84f1-44f1-86dd-021dc4acde96";//实例ID
string 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://:fb92bf2e0abf11e5:1234561178a1A@10.0.0.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[] {
"fb92bf2e0abf11e5:1234561178a1A@10.0.0.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();
}
}
}
运行结果: