2017-11-17 4 views
1

Redis Client의 가용성을 확인하는 방법을 파악하려고합니다. 클라이언트 호출의 간단한 동작을 통해이 정보를 얻을 수 있습니까? 더 좋은 방법이 있습니까?ServiceStack.Redis 서비스 가용성

private RedisManagerPool redisPool; 
public RedisCacheProviderStatus ServiceStatus() 
{ 
    try 
    { 
     using (IRedisClient client = redisPool.GetClient()) 
     { 
     } 
     return RedisCacheProviderStatus.Available; 
    } 
    catch (Exception) 
    { 
     return RedisCacheProviderStatus.NotAvailable; 
    } 
} 

답변

2

전화 Ping() 같은 레디 스 작업 :

using (var redis = redisPool.GetClient()) 
{ 
    return ((IRedisNativeClient)redis).Ping() 
     ? RedisCacheProviderStatus.Available 
     : RedisCacheProviderStatus.NotAvailable; 
} 
+0

내가 핑() 메소드가 표시되지 않는 경우. v4.0.30319 버전을 사용 중입니다. – AngeloBad

+1

@AngeloBad'((IRedisNativeClient) redis) .Ping()'에 캐스트가 필요합니다. – mythz