Ralentissement des échanges à débit constant

Je commence à voir ressortir un problème que je ne pensais pas avoir à régler si tôt.

Le nombre d’objets augmente, et avec, les liens associés aussi. Or lorsqu’un robot par exemple synchronise les liens d’un objet pivot, que l’on peut plutôt appeler un nœud, il télécharge systématiquement l’intégralité des liens… et vérifie leurs signatures.
Tant qu’il n’y en avait pas beaucoup, ça ne se sentait pas trop sur le temps de synchronisation. Mais ça commence à se voir aujourd’hui sur certains objets.

Une des solutions serait de voir si le lien est déjà connu. Cela oblige à parcourir l’intégralité des liens d’un objet qui justement peut en contenir beaucoup. On va gagner à court terme sur le traitement des liens. Mais on continue à télécharger des liens inutilement.
Et que ce passera-t-il lorsque la recherche de la présence du lien sera plus longue que la vérification de sa signature?
Bref, cela ne fait que reporter le problème à plus tard…

Il faut résoudre ce problème de façon plus élégante. Cela peut être fait en demandant les liens après un lien particulier, le dernier que l’on connaît déjà.
Cela oblige à implémenter la fonction côté entité, mais aussi côté serveur. Or la façon dont les serveurs web délivrent les liens et objets ne se pas prête à ça. Il faut leur ajouter un peu plus d’intelligence.

D’un autre côté, la vérification si le lien est déjà présent est réalisée juste avant de l’ajouter à un objet… On aura aussi un problème à résoudre à cette étape là…

Comments are closed.