{"id":105136,"date":"2022-09-19T21:36:45","date_gmt":"2022-09-19T19:36:45","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/facebook-otkryl-kod-frejmvorka-dlya-vyyavleniya-utechek-pamyati-v-javascript"},"modified":"2022-09-19T21:36:45","modified_gmt":"2022-09-19T19:36:45","slug":"facebook-otkryl-kod-frejmvorka-dlya-vyyavleniya-utechek-pamyati-v-javascript","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/news\/facebook-otkryl-kod-frejmvorka-dlya-vyyavleniya-utechek-pamyati-v-javascript","title":{"rendered":"Facebook a ouvert le code du framework pour d\u00e9tecter les fuites de m\u00e9moire en JavaScript.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>La soci\u00e9t\u00e9 Facebook (interdite en RF) a rendu public le code source de l'outil memlab, destin\u00e9 \u00e0 analyser les instantan\u00e9s de l'\u00e9tat de la m\u00e9moire dynamique (tas), \u00e0 d\u00e9finir une strat\u00e9gie d'optimisation de la gestion de la m\u00e9moire et \u00e0 d\u00e9tecter les fuites de m\u00e9moire survenant lors de l'ex\u00e9cution de code en JavaScript. Le code est ouvert sous licence MIT.    <\/p>\n<p>Le framework a \u00e9t\u00e9 cr\u00e9\u00e9 pour analyser les raisons d'une consommation \u00e9lev\u00e9e de m\u00e9moire lors de l'utilisation de sites web et d'applications web. Par exemple, memlab a \u00e9t\u00e9 utilis\u00e9 pour analyser la consommation de m\u00e9moire avec la nouvelle version du site Facebook.com, ce qui a permis de d\u00e9couvrir des fuites conduisant \u00e0 un plantage du navigateur c\u00f4t\u00e9 client \u00e0 cause d'une m\u00e9moire \u00e9puis\u00e9e.     <\/p>\n<p>Les fuites de m\u00e9moire lors de l'ex\u00e9cution du code JavaScript peuvent \u00eatre caus\u00e9es par la pr\u00e9sence de r\u00e9f\u00e9rences cach\u00e9es \u00e0 des objets, emp\u00eachant le ramasse-miettes de lib\u00e9rer la m\u00e9moire occup\u00e9e par l'objet, un cache inappropri\u00e9 des valeurs ou l'impl\u00e9mentation d'un d\u00e9filement infini sans \u00e9vincer les anciens \u00e9l\u00e9ments de la liste. Par exemple, dans le code ci-dessous, une fuite de m\u00e9moire se produit dans Chrome \u00e0 cause de l'objet &#171;obj&#187;, m\u00eame s'il est attribu\u00e9 \u00e0 la valeur null, car Chrome conserve des r\u00e9f\u00e9rences internes aux objets affich\u00e9s pour permettre leur inspection ult\u00e9rieure dans la console web. var obj = {}; console.log(obj); obj = null;        <\/p>\n<p>Fonctionnalit\u00e9s principales de memlab :  <\/p>\n<ul>\n<li class=\"l\"> D\u00e9tection des fuites de m\u00e9moire dans le navigateur. Memlab permet de comparer automatiquement les instantan\u00e9s de l'\u00e9tat de la m\u00e9moire dynamique, de d\u00e9tecter les fuites de m\u00e9moire et d'agr\u00e9ger les r\u00e9sultats.\n<li class=\"l\"> API orient\u00e9e objet pour parcourir le tas, permettant de mettre en \u0153uvre vos propres algorithmes de d\u00e9tection des fuites et de r\u00e9aliser des syst\u00e8mes d'analyse des instantan\u00e9s de l'\u00e9tat du tas. L'analyse du tas est prise en charge pour les navigateurs bas\u00e9s sur le moteur Chromium, ainsi que pour les plateformes Node.js, Electron et Hermes.\n<li class=\"l\"> Interface en ligne de commande et API pour explorer les opportunit\u00e9s d'optimisation de la consommation de m\u00e9moire.\n<li class=\"l\"> Syst\u00e8me d'assertions pour Node.js, permettant de cr\u00e9er des tests unitaires et d'ex\u00e9cuter des programmes bas\u00e9s sur Node.js pour cr\u00e9er des instantan\u00e9s de son propre \u00e9tat, v\u00e9rifier sa m\u00e9moire ou \u00e9crire des assertions \u00e9tendues.  <\/ul>\n<p>Source : <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=57802\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Facebook (\u0437\u0430\u043f\u0440\u0435\u0449\u0435\u043d\u0430 \u0432 \u0420\u0424) \u043e\u0442\u043a\u0440\u044b\u043b\u0430 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u0442\u0435\u043a\u0441\u0442\u044b \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f memlab, \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u043e\u0433\u043e \u0434\u043b\u044f \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0441\u0440\u0435\u0437\u043e\u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 (\u043a\u0443\u0447\u0438), \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0438 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043f\u0430\u043c\u044f\u0442\u044c\u044e \u0438 \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0443\u0442\u0435\u0447\u0435\u043a \u043f\u0430\u043c\u044f\u0442\u0438, \u0432\u043e\u0437\u043d\u0438\u043a\u0430\u044e\u0449\u0438\u0445 \u043f\u0440\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0438 \u043a\u043e\u0434\u0430 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 JavaScript. \u041a\u043e\u0434 \u043e\u0442\u043a\u0440\u044b\u0442 \u043f\u043e\u0434 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439 MIT. \u0424\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a \u0431\u044b\u043b \u0441\u043e\u0437\u0434\u0430\u043d \u0434\u043b\u044f \u0440\u0430\u0437\u0431\u043e\u0440\u0430 \u043f\u0440\u0438\u0447\u0438\u043d \u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u044f \u043f\u0430\u043c\u044f\u0442\u0438 \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 web-\u0441\u0430\u0439\u0442\u0430\u043c\u0438 \u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-105136","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Facebook (\u0437\u0430\u043f\u0440\u0435\u0449\u0435\u043d\u0430 \u0432 \u0420\u0424) \u043e\u0442\u043a\u0440\u044b\u043b\u0430 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u0442\u0435\u043a\u0441\u0442\u044b \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f memlab, \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u043e\u0433\u043e \u0434\u043b\u044f \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0441\u0440\u0435\u0437\u043e\u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 (\u043a\u0443\u0447\u0438), \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0438 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u0441.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/fr\/blog\/news\/facebook-otkryl-kod-frejmvorka-dlya-vyyavleniya-utechek-pamyati-v-javascript\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47Facebook \u043e\u0442\u043a\u0440\u044b\u043b \u043a\u043e\u0434 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0430 \u0434\u043b\u044f \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0443\u0442\u0435\u0447\u0435\u043a \u043f\u0430\u043c\u044f\u0442\u0438 \u0432 JavaScript | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Facebook (\u0437\u0430\u043f\u0440\u0435\u0449\u0435\u043d\u0430 \u0432 \u0420\u0424) \u043e\u0442\u043a\u0440\u044b\u043b\u0430 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u0442\u0435\u043a\u0441\u0442\u044b \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f memlab, \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u043e\u0433\u043e \u0434\u043b\u044f \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0441\u0440\u0435\u0437\u043e\u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 (\u043a\u0443\u0447\u0438), \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0438 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u0441.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/news\/facebook-otkryl-kod-frejmvorka-dlya-vyyavleniya-utechek-pamyati-v-javascript\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2022-09-19T19:36:45+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2022-09-19T19:36:45+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47 Facebook a ouvert le code du framework pour d\u00e9tecter les fuites de m\u00e9moire en JavaScript | ProHoster","description":"La soci\u00e9t\u00e9 Facebook (interdite en RF) a ouvert le code source de l'outil memlab, destin\u00e9 \u00e0 analyser des instantan\u00e9s de l'\u00e9tat de la m\u00e9moire dynamique (heap) et \u00e0 d\u00e9finir une strat\u00e9gie d'optimisation des performances.","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/news\/facebook-otkryl-kod-frejmvorka-dlya-vyyavleniya-utechek-pamyati-v-javascript","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47Facebook \u043e\u0442\u043a\u0440\u044b\u043b \u043a\u043e\u0434 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0430 \u0434\u043b\u044f \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0443\u0442\u0435\u0447\u0435\u043a \u043f\u0430\u043c\u044f\u0442\u0438 \u0432 JavaScript | ProHoster","og:description":"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Facebook (\u0437\u0430\u043f\u0440\u0435\u0449\u0435\u043d\u0430 \u0432 \u0420\u0424) \u043e\u0442\u043a\u0440\u044b\u043b\u0430 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u0442\u0435\u043a\u0441\u0442\u044b \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f memlab, \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u043e\u0433\u043e \u0434\u043b\u044f \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0441\u0440\u0435\u0437\u043e\u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 (\u043a\u0443\u0447\u0438), \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0438 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u0441.","og:url":"https:\/\/prohoster.info\/fr\/blog\/news\/facebook-otkryl-kod-frejmvorka-dlya-vyyavleniya-utechek-pamyati-v-javascript","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2022-09-19T19:36:45+00:00","article:modified_time":"2022-09-19T19:36:45+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":[],"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/105136","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=105136"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/105136\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=105136"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=105136"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=105136"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}