Tenho um servidor REST em execução no Amazon EC2 Windows com MySQL. Parece que, após um longo período de inatividade, o MySQL está encerrando as conexões. Estou usando Delphi com FireDAC. Recebo este erro nos logs
conFD: TFDPhysMySQLConnection: . O servidor MySQL foi embora [errno=2006, sqlstate="HY000"]
Pelo Google, parece que são 8 horas. Eu poderia aumentar isso, mas eventualmente isso ainda vai acontecer durante os feriados (talvez).
É a única tarefa do MySQL em execução, então não preciso conservar recursos. Qual é outra maneira de resolver isso?
Uma maneira possível seria criar um mecanismo de manutenção de atividade .
Você pode modificar seu aplicativo para enviar a cada hora (modifique conforme suas necessidades) uma
SELECT 1;
consulta simples, apenas para manter a conexão aberta.Acontece que o FireDAC tem um mecanismo integrado que eles chamam de Ping .
Ainda é um processo manual, tenho que chamá-lo eu mesmo em um cronômetro. Eles sugerem a cada 30 segundos. No entanto, achei isso brutal. Fiz para 30 minutos, com base na resposta que aceitei.
RANT - Deveria ter sido apenas uma propriedade para marcar.