C'est pas tellement de l'optimisation ça. Il s'agit de bien faire la différence entre
- Le nombre de requêtes traîtées par secondes
- Le temps qu'il faut pour traiter une requête
On peut traiter les requêtes qui arrivent en même temps une par une. La première sera servie en un temps X, la seconde probablement en 2X, et la dernière attendra extrèmement longtemps. En termes de temps de réponse c'est très mauvais.
Pour le usleep, s'il était nécessaire, il est probable que l'OS soit mal configuré. En principe ce n'est pas le code qu'on modifie pour améliorer ça. Il y avaut un lien dans ce sujet qui montrait un site intéressant parlant de l'importance de la configuration du serveur. Le site tentait d'étudier la question d'optimisation de code toute en précisant bien que c'était très modeste, et en tout cas secondaire dans la liste des optimisations.
La réduction de parallélisme sur une grosse opération peut être dûe aux verouillages. Sur des opérations dispersées, un verouillage en deux phases permet potentiellement un meilleur parallélisme.
Partager