{"id":982,"date":"2013-04-26T20:04:47","date_gmt":"2013-04-26T18:04:47","guid":{"rendered":"http:\/\/blog.nebule.org\/?p=982"},"modified":"2016-03-29T19:03:17","modified_gmt":"2016-03-29T17:03:17","slug":"ralentissement-des-echanges-a-debit-constant","status":"publish","type":"post","link":"https:\/\/blog.nebule.org\/?p=982","title":{"rendered":"Ralentissement des \u00e9changes \u00e0 d\u00e9bit constant"},"content":{"rendered":"<p style=\"text-align: justify;\">Je commence \u00e0 voir ressortir un probl\u00e8me que je ne pensais pas avoir \u00e0 r\u00e9gler si t\u00f4t.<\/p>\n<p style=\"text-align: justify;\">Le nombre d&rsquo;objets augmente, et avec, les liens associ\u00e9s aussi. Or lorsqu&rsquo;un robot par exemple synchronise les liens d&rsquo;un objet pivot, que l&rsquo;on peut plut\u00f4t appeler un n\u00c5\u201cud, il t\u00e9l\u00e9charge syst\u00e9matiquement l&rsquo;int\u00e9gralit\u00e9 des liens&#8230; et v\u00e9rifie leurs signatures.<br \/>\nTant qu&rsquo;il n&rsquo;y en avait pas beaucoup, \u00e7a ne se sentait pas trop sur le temps de synchronisation. Mais \u00e7a commence \u00e0 se voir aujourd&rsquo;hui sur certains objets.<\/p>\n<p style=\"text-align: justify;\">Une des solutions serait de voir si le lien est d\u00e9j\u00e0 connu. Cela oblige \u00e0 parcourir l&rsquo;int\u00e9gralit\u00e9 des liens d&rsquo;un objet qui justement peut en contenir beaucoup. On va gagner \u00e0 court terme sur le traitement des liens. Mais on continue \u00e0 t\u00e9l\u00e9charger des liens inutilement.<br \/>\nEt que ce passera-t-il lorsque la recherche de la pr\u00e9sence du lien sera plus longue que la v\u00e9rification de sa signature?<br \/>\nBref, cela ne fait que reporter le probl\u00e8me \u00e0 plus tard&#8230;<\/p>\n<p style=\"text-align: justify;\">Il faut r\u00e9soudre ce probl\u00e8me de fa\u00e7on plus \u00e9l\u00e9gante. Cela peut \u00eatre fait en demandant les liens apr\u00e8s un lien particulier, le dernier que l&rsquo;on conna\u00eet d\u00e9j\u00e0.<br \/>\nCela oblige \u00e0 impl\u00e9menter la fonction c\u00f4t\u00e9 entit\u00e9, mais aussi c\u00f4t\u00e9 serveur. Or la fa\u00e7on dont les serveurs web d\u00e9livrent les liens et objets ne se pas pr\u00eate \u00e0 \u00e7a. Il faut leur ajouter un peu plus d&rsquo;intelligence.<\/p>\n<p style=\"text-align: justify;\">D&rsquo;un autre c\u00f4t\u00e9, la v\u00e9rification si le lien est d\u00e9j\u00e0 pr\u00e9sent est r\u00e9alis\u00e9e juste avant de l&rsquo;ajouter \u00e0 un objet&#8230; On aura aussi un probl\u00e8me \u00e0 r\u00e9soudre \u00e0 cette \u00e9tape l\u00e0&#8230;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Je commence \u00e0 voir ressortir un probl\u00e8me que je ne pensais pas avoir \u00e0 r\u00e9gler si t\u00f4t. Le nombre d&rsquo;objets augmente, et avec, les liens associ\u00e9s aussi. Or lorsqu&rsquo;un robot par exemple synchronise les liens d&rsquo;un objet pivot, que l&rsquo;on peut plut\u00f4t appeler un n\u00c5\u201cud, il t\u00e9l\u00e9charge syst\u00e9matiquement l&rsquo;int\u00e9gralit\u00e9 des liens&#8230; et v\u00e9rifie leurs signatures. &hellip; <a href=\"https:\/\/blog.nebule.org\/?p=982\" class=\"more-link\">Continuer la lecture de <span class=\"screen-reader-text\">Ralentissement des \u00e9changes \u00e0 d\u00e9bit constant<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[84,6],"tags":[],"_links":{"self":[{"href":"https:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/posts\/982"}],"collection":[{"href":"https:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.nebule.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=982"}],"version-history":[{"count":1,"href":"https:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/posts\/982\/revisions"}],"predecessor-version":[{"id":2274,"href":"https:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/posts\/982\/revisions\/2274"}],"wp:attachment":[{"href":"https:\/\/blog.nebule.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=982"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.nebule.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=982"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.nebule.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=982"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}