Consentitemi di prefigurarlo dicendo che non sono un amministratore di sistema, sono un programmatore.
Di recente, i nostri amministratori di sistema hanno installato i bilanciatori di carico F5. Da allora, ho notato che ogni volta che una richiesta scade e finisce per lanciare un 500, il bilanciamento del carico invia la stessa richiesta all'altro nostro server. IIS invia la risposta di timeout anche se lo script è ancora in esecuzione. Anche le richieste POST vengono duplicate se uno script viene eseguito per più di 5 minuti. Questo mi sembra un potenziale problema, specialmente con i siti di e-commerce in cui è coinvolta la fatturazione dei clienti.
Questo è solo un problema con alcuni dei nostri script più lunghi (ma è un problema serio). Mi è stato detto che si tratta di un comportamento previsto e dovremo modificare il nostro codice per renderlo conforme. Quindi le mie domande sono:
- Questo comportamento è previsto?
- Qual è il vantaggio del bilanciamento del carico che replica la richiesta dopo un timeout diverso dall'utente che non deve aggiornare?
- Con questa architettura, se viene eseguito uno script che impantona il server o le risorse di maiale, finirà per essere eseguito su entrambi i server. È davvero ottimale?