Quelque part, câest logique, dâautant plus sur des serveurs surdimensionnĂ©s.
AprĂšs, il y a peut-ĂȘtre un problĂšme au niveau du filtrage des paquets.
Faut savoir quâen plus des communications entre joueurs, y a un tas de trucs qui transitent sur les canaux, y compris des addons qui communiquent entre eux comme ça (SendAddonMessage), ou qui envoient des commandes, ou des mĂȘme des macros (SendChatMessage), etc etc.
Bref, câest un bourbier sans nom ce truc.
En plus, on va pas se mentir, y a des bugs assez Ă©tranges, et avec probablement un impact au niveau des perfs qui trainent depuis la release (ptet mĂȘme avant puisque je crois que le problĂšme avait Ă©tĂ© vu sur retail aussi).
Jâen avais trouvĂ© un peu de temps aprĂšs mon retour de vacances, que jâavais relayĂ© ici
Ăa concerne les castsequences, qui pour une raison inexpliquĂ©e, au moment oĂč tu lances ton jeu, envoient un spam de GET_ITEM_INFO_RECEIVED au rythme dĂ©bile dâ1 event ⊠par frame, soit 60 fois par seconde, minimum.
Il suffit dâappuyer une fois sur ta macro castsequence une fois pour que le spam sâarrĂȘte, mais tant que tu ne le fais pas, si tâas mis ta macro sur une barre dâaction, ben tâas un dĂ©gueulis dâevents qui transitent dans les paquets ⊠pour rien.
Jâai report le truc, et je suis pas la seule (jâai un ami qui code aussi des addons qui lâavait remarquĂ©, et a aussi report), mais Ă priori, rien nâa Ă©tĂ© fait.
AprÚs, je sais pas comment les paquets sont filtrés, y a que Blizzard qui le sait, mais laisser trainer des bourbiers pareils, ça peut potentiellement embourber des trucs en chaine.
En plus, ils ont fait plusieurs modifs un peu Ă mâarrache de lâAPI, pour limiter le fonctionnement de lâaddon LFG dâabord, puis de Spy ensuite, etc etc.
Dâici quâils aient pas pĂ©tĂ© un truc, câest pas impossible, y a parfois des effets de bord Ă©tranges quand tu bidouilles ces machins.
Ce genre de truc, câest de lâasynchrone, donc sans rentrer dans un truc technique Ă expliquer, dans les protocoles, câest plus ou moins un systĂšme de promesses, tant quâen face ça rĂ©pond pas, ben tâas soit un truc bloquant (ça poireaute, et ça ne fait rien), soit ça passe Ă autre chose en attendant, ça met le machin dans une boucle dâĂ©vĂšnements, et ça le traitera plus tard, dans un autre cycle.
Câest trĂšs trĂšs (trĂšs) schĂ©matisĂ©, parce quâil faudrait parler du systĂšme de concurrence, suivant la techno utilisĂ©e cĂŽtĂ© serveur, ça gĂšre ça plus ou moins bien, et de maniĂšre parfois totalement diffĂ©rente, mais câest pour avoir une idĂ©e
En gros, soit ça bloque quand ça répond pas, soit ça met dans la pile et ça le fera plus tard.
Et lĂ , tu comprends bien que si tu commences Ă :
- augmenter la population des serveurs.
- laisses trainer des trucs dĂ©gueulasses dans le code qui devraient ĂȘtre corrigĂ©s
- modifies des trucs Ă lâarrache en rĂ©action (les hotfixes, câest toujours dangereux)
Ben tu peux potentiellement avoir des effets de bord indésirables qui peuvent avoir un impact sur les perfs, à un endroit ou un autre de la chaine.
Je dis pas que ça vient de lĂ , parce quâencore une fois, Ă titre personnel, jâai pas la moindre idĂ©e de la techno utilisĂ©e par Blizzard cĂŽtĂ© serveur, mais quand tu fais pas le mĂ©nage, au bout dâun moment, ben ça coince.
Et câest pas Ă©tonnant que les ralentissements coĂŻncident avec les pics de connexion.