ServiceStack.Redis 服务可用性

ServiceStack.Redis Service availability

我想知道如何检查 Redis 客户端的可用性。 调用客户端的简单操作,会给我这个信息吗? 有没有更好的方法?

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

像这样调用 Redis 操作 Ping():

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