{"id":2827,"date":"2016-11-27T13:59:08","date_gmt":"2016-11-27T11:59:08","guid":{"rendered":"http:\/\/blog.nebule.org\/?p=2827"},"modified":"2016-11-27T19:17:20","modified_gmt":"2016-11-27T17:17:20","slug":"bootstrap-avec-ou-sans-pre-chargement-des-applications","status":"publish","type":"post","link":"https:\/\/blog.nebule.org\/?p=2827","title":{"rendered":"bootstrap &#8211; Avec ou sans pr\u00e9-chargement des applications"},"content":{"rendered":"<p style=\"text-align: justify;\">Le <a title=\"Bootstrap \u00e2\u20ac\u201c pr\u00e9-chargement des applications\" href=\"http:\/\/blog.nebule.org\/?p=2706\">pr\u00e9-chargement des applications<\/a> par le <a title=\"bootstrap\" href=\"http:\/\/blog.nebule.org\/?page_id=2462\">bootstrap<\/a> va permettre d&rsquo;am\u00e9liorer l&rsquo;exp\u00e9rience utilisateur lors du premier chargement d&rsquo;une application. M\u00eame si les applications n&rsquo;ont pas encore \u00e9t\u00e9 optimis\u00e9es pour en profiter pleinement, c&rsquo;est d\u00e9j\u00e0 fonctionnel et efficace.<\/p>\n<p style=\"text-align: justify;\">Par contre, comme \u00e9nonc\u00e9 dans l&rsquo;article <a title=\"Bootstrap \u00e2\u20ac\u201c pr\u00e9-chargement des applications \u00e2\u20ac\u201c indexation\" href=\"http:\/\/blog.nebule.org\/?p=2790\">pr\u00e9-chargement des applications \u00e2\u20ac\u201c indexation<\/a>, certaines applications n&rsquo;ont pas forc\u00e9ment un int\u00e9r\u00eat \u00e0 \u00eatre pr\u00e9-charg\u00e9es.<br \/>\nC&rsquo;est le cas de l&rsquo;application <a title=\"defolt\" href=\"http:\/\/blog.nebule.org\/?page_id=2469\">defolt<\/a> qui se charge tr\u00e8s vite et dont la page de pr\u00e9-chargement n&rsquo;apporte rien, voir casse un peu le principe de la page par d\u00e9faut.<br \/>\nEt c&rsquo;est aussi le cas de l&rsquo;application <a title=\"upload\" href=\"http:\/\/blog.nebule.org\/?page_id=2467\" target=\"_blank\">upload<\/a> qui charge vite mais qui peut \u00e0 l&rsquo;avenir permettre la synchronisation d&rsquo;objets et de liens entre serveurs. Hors le passage par une page interm\u00e9diaire oblige le serveur distant \u00e0 g\u00e9rer le <em>cookie<\/em> de connexion avant de pouvoir envoyer des donn\u00e9es.<\/p>\n<p style=\"text-align: justify;\">La derni\u00e8re version du <em>bootstrap<\/em>, qui va \u00eatre bient\u00f4t publi\u00e9e, reconna\u00eet maintenant un lien pour d\u00e9sactiver le pr\u00e9-chargement d&rsquo;une application. Le comportement par d\u00e9faut reste de pr\u00e9-charger une application. Chaque application pourra, sur initiative du ma\u00eetre du code <a title=\"bachue\" href=\"http:\/\/bachue.nebule.org\" target=\"_blank\">bachue<\/a> ou d&rsquo;une autorit\u00e9 locale, ne plus \u00eatre pr\u00e9-charg\u00e9e.<\/p>\n<p style=\"text-align: justify;\">Le lien de non pr\u00e9-chargement a la forme :<\/p>\n<ul>\n<li>action : <code>f<\/code><\/li>\n<li>source : objet de r\u00e9f\u00e9rence de l&rsquo;application, par exemple = <code>e5ce3e9938247402722233e4698cda4adb44bb2e01aa0687<\/code><\/li>\n<li>cible : objet de r\u00e9f\u00e9rence de non pr\u00e9-chargement = <code>9d019716a5335ee1f3bad59cbb9cc93132b0726129b26b52d6441a66c7c59a8d<\/code><\/li>\n<li>m\u00e9ta : objet de r\u00e9f\u00e9rence de l&rsquo;application, par exemple = <code>e5ce3e9938247402722233e4698cda4adb44bb2e01aa0687<\/code><code><br \/>\n<\/code><\/li>\n<\/ul>\n<p style=\"text-align: justify;\">De plus, le probl\u00e8me de d\u00e9passement de m\u00e9moire est r\u00e9solu. Il vient d&rsquo;une pr\u00e9-allocation de m\u00e9moire de la fonction\u00c2\u00a0<code>file_get_content<\/code> qui se fait parfois sur la totalit\u00e9 de l&rsquo;argument\u00c2\u00a0<code>$maxlen<\/code> alors que le contenu r\u00e9el est d\u00e9risoire&#8230; et qui ne lib\u00e8re pas cette m\u00e9moire en fin de fonction.<\/p>\n<p style=\"text-align: justify;\">Enfin, la m\u00e9trologie a \u00e9t\u00e9 aussi grandement renforc\u00e9e. L&rsquo;avenir dira si cela a un impact n\u00e9gligeable sur les performances ou pas. En fin de bootstrap, les logs contiennent une trace de la m\u00e9moire maximum utilis\u00e9e ainsi que les objets et liens lus et v\u00e9rifi\u00e9s :<\/p>\n<p><code>Nov 27 12:21:36 bachue bootstrap\/81bd1a52600b: 0.64311790466309 Mp=9698504 Lr=2720+4 Lv=355+4 Or=361+0 Ov=8+0<\/code><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Le pr\u00e9-chargement des applications par le bootstrap va permettre d&rsquo;am\u00e9liorer l&rsquo;exp\u00e9rience utilisateur lors du premier chargement d&rsquo;une application. M\u00eame si les applications n&rsquo;ont pas encore \u00e9t\u00e9 optimis\u00e9es pour en profiter pleinement, c&rsquo;est d\u00e9j\u00e0 fonctionnel et efficace. Par contre, comme \u00e9nonc\u00e9 dans l&rsquo;article pr\u00e9-chargement des applications \u00e2\u20ac\u201c indexation, certaines applications n&rsquo;ont pas forc\u00e9ment un int\u00e9r\u00eat \u00e0 &hellip; <a href=\"https:\/\/blog.nebule.org\/?p=2827\" class=\"more-link\">Continuer la lecture de <span class=\"screen-reader-text\">bootstrap &#8211; Avec ou sans pr\u00e9-chargement des applications<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[55,363,62,67,70,367,5,7,14,384,368],"tags":[],"_links":{"self":[{"href":"https:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/posts\/2827"}],"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=2827"}],"version-history":[{"count":3,"href":"https:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/posts\/2827\/revisions"}],"predecessor-version":[{"id":2836,"href":"https:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/posts\/2827\/revisions\/2836"}],"wp:attachment":[{"href":"https:\/\/blog.nebule.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2827"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.nebule.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2827"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.nebule.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2827"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}