A maneira mais simples de garantir que apenas uma cópia do seu script esteja em execução é usar
flock()
para obter um bloqueio de arquivo. Por exemplo:Então, basicamente, você teria um arquivo fictício configurado onde seu script, ao iniciar, tenta adquirir um bloqueio. Se for bem-sucedido, ele é executado. Se não, ele sai. Dessa forma, apenas uma cópia do seu script pode ser executada por vez.
Observação:
flock()
é o que se chama de consultoria lock, o que significa que só funciona se você usá-lo. Portanto, isso impedirá que seu próprio script seja executado várias vezes, mas não fará nada sobre nenhum outro script, o que parece bom em sua situação.