C\#에서 redis 를 어떻게 사용 합 니까?
C\#에서 redis 를 어떻게 사용 하 는 지 소개 합 니 다.
1,참조 StackExchange.Redis
2.redis 도구 류
public class RedisHelper
{
private static ConnectionMultiplexer multiplexer { get; set; }
static RedisHelper()
{
}
public static IDatabase GetDataBase(int dbNums = 1)
{
if (multiplexer == null)
Init();
return multiplexer.GetDatabase(dbNums);
}
public static ConnectionMultiplexer GetMultiplexer()
{
if (multiplexer == null)
Init();
return multiplexer;
}
public static bool IsConnect(string key, IDatabase redisDb, string module, string action)
{
if (!redisDb.IsConnected(key))
{
LogHelper.Error("current redis is not connect", null, module, action);
return false;
}
return true;
}
private static void Init()
{
try
{
var configString = ConfigurationManager.AppSettings["RedisConfigString"];
ConfigurationOptions options = ConfigurationOptions.Parse(configString);
multiplexer = ConnectionMultiplexer.Connect(options);
}
catch (Exception ex)
{
LogHelper.Error(ex, "RedisHelper", "Static");
}
}
}
3.상용 조작
IDatabase _cacheClient = RedisHelper.GetDataBase(4);
//key
_cacheClient.KeyExists("key")
// key-vaule
_cacheClient.StringSet("key", "value");
//
_cacheClient.KeyExpire("key", TimeSpan.FromMinutes(1));
//
_cacheClient.KeyDelete("key");
4.redis 도 메시지 대기 열 을 만 들 수 있 고 실현 도 간단 하지만 단점 도 뚜렷 하 므 로 추천 하지 않 습 니 다.
//
ConnectionMultiplexer multiplexer = RedisHelper.GetMultiplexer();
ISubscriber sub = multiplexer.GetSubscriber();
var queue = sub.Publish("channel name", "message");
//
ConnectionMultiplexer multiplexer = RedisHelper.GetMultiplexer();
ISubscriber sub = multiplexer.GetSubscriber();
sub.Subscribe("channel name", (channel, message) =>
{
//TODO
});
5.카운터,재 고 를 순식간에 죽 이 고 앞 다 투어 구 매 하 는 데 사용
// , 0
long num = _cacheClient.StringIncrement("key", 0)
// ,
//
_cacheClient.StringIncrement("key", 2)
이상 은 C\#에서 redis 를 어떻게 사용 하 는 지 에 대한 상세 한 내용 입 니 다.C\#redis 를 사용 하 는 자 료 는 다른 관련 글 을 주목 하 세 요!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
C#Task를 사용하여 비동기식 작업을 수행하는 방법라인이 완성된 후에 이 라인을 다시 시작할 수 없습니다.반대로 조인(Join)만 결합할 수 있습니다 (프로세스가 현재 라인을 막습니다). 임무는 조합할 수 있는 것이다. 연장을 사용하여 그것들을 한데 연결시키는 것이...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.