Recentemente ho avuto un compito molto interessante da svolgere in cui il multiprocessing mi ha salvato. Fondamentalmente dovevo fare molte richieste a pochi server separati, occupandomi di piccole quantità di dati, ma di molte richieste.
Lavorando con PHP, ho fatto le cose alla vecchia maniera e il miglior tempo che ho ottenuto dopo alcune ore di lavoro ha portato ~ 120 secondi per eseguire un determinato test (molte richieste + ritardo della rete + no asincrono)
Ma non era abbastanza vicino a quello di cui avevo bisogno, e dopo aver fallito miseramente con il multiprocessing di PHP, sono passato a Python.
Dopo alcune ore, ho avuto uno script di multiprocessing Python in esecuzione in 20 secondi, e dopo un po 'di manipolazione con i timeout e no. dei thread da utilizzare, l'ho ridotto a ~ 10 secondi .
Questo era per un sito web scritto al 100% in PHP, ad eccezione di un singolo script Python a 100 righe. E il tutto funziona perfettamente.
La mia conclusione sarebbe che anche se non ti aiuta giorno per giorno, potresti incontrare situazioni in cui conoscere almeno le basi della programmazione concorrente ti aiuterà molto.
Buona fortuna e buon codice!
PS: Non sto cercando di bash PHP, ma PHP semplicemente non era lo strumento giusto per il lavoro a portata di mano.
PS2: Conoscere una nuova tecnologia o un nuovo modo di fare le cose può aprire la porta a un nuovo mondo di possibilità.