我正在开发用于访问Redis服务器的Python服务(类)。我想知道如何检查Redis Server是否正在运行。而且如果某种原因我无法连接到它。
这是我的代码的一部分
import redis rs = redis.Redis("localhost") print rs
它打印以下内容
<redis.client.Redis object at 0x120ba50>
即使我的Redis服务器未运行。
当我发现我的Python代码仅在对redis实例执行 set() 或 get() 时才连接到服务器。
所以我不希望其他服务使用我的类来获得异常说
redis.exceptions.ConnectionError: Error 111 connecting localhost:6379. Connection refused.
我想返回正确的消息/错误代码。我怎样才能做到这一点??
检查Redis服务器可用性的官方方法是ping(http://redis.io/topics/quickstart)。
一种解决方案是对redis进行子类化,并做两件事: