Ok, j'avais bien compris finalement, donc je maintiens ma réponse
Note que j'ai l'impression qu'il s'agit d'un algo de simulation de la planète entière (toutes les lignes existantes), donc à mon sens, tu peux déjà simplement le transcrire en procédure stockée et la lancer, au lieu de faire le calcul côté PHP.
C'est exactement le même problème qu'ECLERD v0 (où, en gros, je lisais toute la BDD pour ensuite simuler l'avancement de chacune des régions), au détail près que tu ne calcules pas des régions/pays mais des lignes d'avion. La solution de la procédure stockée est alors très efficace, d'autant plus quand tu la croise avec les queries SQL utilisant des variables (cf ma réponse précédente).
Et sinon, si tu veux rester sur ton archi actuelle, tu peux passer par INSERT INTO ... (id, passagers) VALUES (...) ON DUPLICATE KEY UPDATE passagers = VALUES(passagers), cf la doc MySQL: https://dev.mysql.com/doc/refman/5.7/en/...icate.html
L'idée est alors de batcher tes UPDATES coté PHP (tu ne fais pas l'update, tu stockes juste la valeur dans un tableeau PHP avec l'id de l'avion) et de ne réaliser les requête UPDATE qu'à la fin de l'algorithme, sous la forme de cet INSERT.
Note que j'ai l'impression qu'il s'agit d'un algo de simulation de la planète entière (toutes les lignes existantes), donc à mon sens, tu peux déjà simplement le transcrire en procédure stockée et la lancer, au lieu de faire le calcul côté PHP.
C'est exactement le même problème qu'ECLERD v0 (où, en gros, je lisais toute la BDD pour ensuite simuler l'avancement de chacune des régions), au détail près que tu ne calcules pas des régions/pays mais des lignes d'avion. La solution de la procédure stockée est alors très efficace, d'autant plus quand tu la croise avec les queries SQL utilisant des variables (cf ma réponse précédente).
Et sinon, si tu veux rester sur ton archi actuelle, tu peux passer par INSERT INTO ... (id, passagers) VALUES (...) ON DUPLICATE KEY UPDATE passagers = VALUES(passagers), cf la doc MySQL: https://dev.mysql.com/doc/refman/5.7/en/...icate.html
L'idée est alors de batcher tes UPDATES coté PHP (tu ne fais pas l'update, tu stockes juste la valeur dans un tableeau PHP avec l'id de l'avion) et de ne réaliser les requête UPDATE qu'à la fin de l'algorithme, sous la forme de cet INSERT.