Você quer Gearman - ele enfileirará as solicitações e as inserirá como e quando o banco de dados estiver pronto para elas, para que você não sobrecarregue seu servidor de banco de dados.
Há um post recente (e de qualidade) sobre o uso de bancos de dados para registrar aqui , que (resumido) diz:
- Use MyISAM com inserções simultâneas
- Gire as tabelas diariamente e use UNION para consultar
- Use inserções atrasadas com o MySQL ou um agente de processamento de tarefas como o Gearman (embora o MySQL tenha um limite no número delas que ele colocará na fila antes de soltá-las silenciosamente!)
HighScalability escreva no Gearman .
Se você realmente deseja evitar isso, pode gravar as instruções SQL brutas em um arquivo e processá-las com este cronjob:
mysql loggingDB logTable < fullLog.sql && > fullLog.sql