Como o memcache armazena tudo na memória RAM, ele perderá seu armazenamento depois que um nó se recuperar de uma falha. O memcache oferece um gancho para invocar um script após sua inicialização? Queremos que esse script faça "alguma coisa", atinja um serviço externo, etc., para recarregar o cache. Estamos usando o Ubuntu 11.
Responder1
Como você está executando o Ubuntu, você pode agrupar tarefas do memcache em uma configuração do Upstart.
O "gancho" para invocar um script após memcached
o início estaria nopost-start
seção da configuração do Upstart.
Sua configuração ficará parecida com:
# memcached - in-memory cache
#
description "memcached"
start on (local-filesystems and started networking)
stop on runlevel [!2345]
respawn
pre-start script
test -x /usr/bin/memcached || { stop; exit 0; }
end script
exec /usr/bin/memcached -v -m 64 -p 11211 -u nobody -l 127.0.0.1
post-start script
/usr/local/bin/populate-memcache.sh
end script
Por favor, verifique a documentação do Upstart, etc. É claro que você precisará remover o script de inicialização do memcached de /etc/init.d.
Responder2
Memcache é um cache não persistente (a idéia é complementar provedores de dados como MySQL e armazenar em cache os dados mais usados, e não substituí-los completamente), portanto, o que você está pedindo não pode ser alcançado.
O argumento sobre 'memcache persistente' é uma lata de vermes em si, comoalgumas pessoasafirme que se você construir um 'memcache persistente', então ele não será mais um 'cache'.
Para mais detalhes (muito mais do que posso fornecer aqui), confiraesta postagem do StackOverflow.