/
RedisConnection.cs
40 lines (33 loc) · 1.04 KB
/
RedisConnection.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
using StackExchange.Redis;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ServiceProxy.Redis
{
public class RedisConnection
{
private readonly ConnectionMultiplexer connectionManager;
public RedisConnection(string host, int port = 6379, string password = null)
{
var options = new ConfigurationOptions();
options.Password = password;
options.EndPoints.Add(host, port);
options.AbortOnConnectFail = false;
this.connectionManager = ConnectionMultiplexer.Connect(options);
}
public RedisConnection(ConnectionMultiplexer connectionMultiplexer)
{
this.connectionManager = connectionMultiplexer;
}
public IDatabase GetClient()
{
return this.connectionManager.GetDatabase();
}
public ISubscriber GetSubscriber()
{
return this.connectionManager.GetSubscriber();
}
}
}