Eu registrei em uma tabela de log do mysql com um cron que o processa.
Eu geralmente uso
innodb
tabelas em meus aplicativos, mas para a tabela de log eu fiz como myisam
e usou insert DELAYED . . .
consultas. Myisam não fornece todas as vantagens do innodb, mas acredito que seja um pouco mais rápido (por esse motivo).
A principal coisa com a qual você está preocupado é o bloqueio do banco de dados quando seu cron está em execução, mas o uso de "inserção atrasada" contorna esse problema na maioria das vezes.