AWS Amazon AMI EC2 obtém uso de memória com php para shell exec

1

As desculpas pela pergunta do novato realmente gostariam de alguns conselhos sobre as melhores práticas em relação ao meu problema.

Eu tenho o ffmpeg instalado na minha caixa e estou executando um script simples que converte um arquivo .mp3 em um arquivo .wav usando o shell_exec com php.

Isso funciona bem quando não é abusado recentemente um usuário do meu serviço escreveu um script de macro que iniciou o processo de converter quase 10.000 mp3s isso acabou com meu servidor até que eu puxei o plugue.

Agora, eu entendo perfeitamente que devo ter algo em prática para evitar esse problema. Qual é o melhor método para evitar esse tipo de situação?

Eu verifiquei o EC2 e tive que parar e reiniciá-lo. O cpu estava com o pico acima de 90 e caiu tudo.

Faz sentido ter um script php para marcar a caixa cpu para carregar e se estiver em algum lugar acima de 50%, simplesmente não execute o script?

Eu ainda estou aprendendo, gostaria de receber alguns conselhos para me dar paz de espírito que esta questão não irá acontecer novamente.

Obrigado

    
por user1503606 07.08.2017 / 14:10

1 resposta

1

Duas coisas, 1) limitar a taxa em sua API para clientes pagantes e usos de nível gratuitos. 2) Um padrão de arquitetura da AWS para isso seria enfileirar as mensagens e dimensionar os trabalhadores com base no tamanho da fila. Você pode até ter filas separadas para usuários pagos e usuários gratuitos. Dessa forma, os funcionários verificam as filas pagas primeiro / com mais frequência do que as filas gratuitas.

link

    
por 08.08.2017 / 14:56