测试Memcached连接

1 投票
1 回答
1501 浏览
提问于 2025-04-17 13:11

我想运行一个简单的服务,用来显示系统上其他服务的状态,比如 Mongo、Redis、Memcached 等等。

对于 Memcached,我想我可以这样做:

from django.core.cache import cache 

host, name = cache._cache._get_server('test')

这个似乎返回了一个主机和一个任意的字符串。这个主机对象能确认我成功连接到 Memcached 吗?

我知道返回的主机对象有一个 connect() 方法。不过在生产环境中打开一个新连接让我有点紧张,而且我没有一个简单的开发环境来测试这个方法。我猜这个方法是在某个 Python 的 Memcached 库里,但我不太确定哪个是相关的。

我可以直接用 _get_server 方法来测试 Memcached 连接是否成功,还是应该使用 connect 方法呢?

1 个回答

1

你可以监控很多东西,比如memcache进程是否在运行,memcache的日志是否在更新等等,这些都不需要网络连接。更进一步的测试是检查你是否能在memcache的端口上打开一个连接。但真正的测试当然是从memcache中设置和获取一个值。为了进行这种测试,我可能会直接使用python-memcached这个包来建立连接,然后设置和获取值。

撰写回答