Как просмотреть данные в memcache?
Я установил memcache и теперь, как мне действительно просматривать данные в memcache?
есть ли способ увидеть данные, присутствующие в кэше внутри memcache?
Как я действительно знаю, получает ли memcache данные, хранящиеся внутри него?
примечание: Я не хочу писать какую-либо программу, чтобы увидеть данные внутри memcache. В принципе, сервер memcache уже установлен в моей среде, и он также кэширует данные. Но я хотел бы знать, есть ли они имеются утилиты, которые покажут мне кэшированные данные в memcache или если есть команда, которая покажет мне данные в кэше.
2 ответов
нет способа получить memcached, чтобы сообщить, какие ключи он держит. Я считаю, что это был выбор дизайна, так как это отрицательно повлияло бы на производительность.
однако вы можете использовать любое клиентское приложение telnet для подключения сервера memcached и ввода команд. Делать это, чтобы получить или установить определенный ключ.
например,
stats
или:
get MY_KEY
сбросить список ключей с сервера, используйте (иногда memcdump
), например,
memdump --servers=localhost
чтобы получить значение элемента, используйте netcat
:
echo "get 13456_-cache-some_object" | nc 127.0.0.1 11211
или в bash:
exec {memcache}<>/dev/tcp/localhost/11211; printf "get items:42:number\nquit\n" >&${memcache}; cat <&${memcache}
сбросить все объекты:
memdump --servers=localhost | xargs -L1 -I% sh -c 'echo "get %" | nc localhost 11211'
или в bash:
exec {memcache}<>/dev/tcp/localhost/11211; printf "stats items\nquit\n" >&${memcache}; cat <&${memcache}