Fermer

mai 19, 2020

Optimisation des performances: réduire le code HTML dans le SDK de Znode 9.X Ecommerce Framework


La vitesse est un aspect important des performances de tout site Web. Actuellement, il existe un besoin d'une solution pour améliorer la vitesse de téléchargement des pages sur le site de commerce électronique. Pour résoudre ce problème, nous avons créé une solution élégante utilisant le langage asp.net MVC et le langage C # mis en œuvre (en supprimant l'espace blanc dans notre code HTML généré) sur le client d'un site Web de commerce électronique Znode 9.X.

L'explication donnée ci-dessous fonctionne sur SDK Znode Commerce ainsi que sur ASP.NET MVC version 4 et supérieure. Il minimise le HTML généré, supprimant les commentaires et les espaces lors de l'exécution de la page, et améliore ainsi les performances du site de commerce électronique en termes de vitesse de téléchargement de la page. Le code MVC ci-dessous supprime les espaces blancs du code HTML lors de l'écriture de la page.

Avant la mise en œuvre de la fonction HTML Minify:

Dans «View Source» sur la page Web, nous voyons quelque chose comme ceci:

 1 "width =" 1024 "height =" 526 "srcset =" https://i1.wp.com/blogs.perficient.com/files/1-2.png?resize=1024%2C526&ssl=1 1024w, https: / /i1.wp.com/blogs.perficient.com/files/1-2.png?resize=300%2C154&ssl=1 300w, https://i1.wp.com/blogs.perficient.com/files/1- 2.png? Resize = 768% 2C395 & ssl = 1 768w, https://i1.wp.com/blogs.perficient.com/files/1-2.png?resize=500%2C257&ssl=1 500w, https: // i1.wp.com/blogs.perficient.com/files/1-2.png?resize=800%2C411&ssl=1 800w, https://i1.wp.com/blogs.perficient.com/files/1-2 .png? resize = 1280% 2C658 & ssl = 1 1280w, https://i1.wp.com/blogs.perficient.com/files/1-2.png?resize=750%2C386&ssl=1 750w, https: // i1 .wp.com / blogs.perficient.com / files / 1-2.png? resize = 600% 2C308 & ssl = 1 600w, https://i1.wp.com/blogs.perficient.com/files/1-2. png? resize = 640% 2C329 & ssl = 1 640w , https://i1.wp.com/blogs.perficient.com/files/1-2.png?w=1354&ssl=1 1354w "tailles =" (largeur max: 1000px) 100vw, 1000px "data-recalc- dims = "1" /></p><p> Pour la "View Source" ci-dessus, nous aurions besoin de réduire ou de supprimer les espaces blancs et les commentaires en HTML.</p><p> Comme note, la taille de la page était <strong> 14,4 kB </strong> et le temps de chargement était de <strong> 2,32 s </strong>:</p><div class=

 Plates-formes et technologie - Guide des chefs d'entreprise sur les tendances clés du cloud

 2 "width =" 667 "height =" 157 "srcset =" https : //i0.wp.com/blogs.perficient.com/files/2-2.png? w = 667 & ssl = 1 667w, https://i0.wp.com/blogs.perficient.com/files/2- 2.png? Resize = 300% 2C71 & ssl = 1 300w, https://i0.wp.com/blogs.perficient.com/files/2-2.png?resize=500%2C118&ssl=1 500w, https: // i0.wp.com/blogs.perficient.com/files/2-2.png?resize=600%2C141&ssl=1 600w, https://i0.wp.com/blogs.perficient.com/files/2-2 .png? resize = 640% 2C151 & ssl = 1 640w "tailles =" (largeur max: 667px) 100vw, 667px "data-recalc-dims =" 1 "/></p><h2> Étapes pour implémenter Minify HTML dans Znode 9.X Ecommerce Framework SDK:</h2><p> Ceci supprimera l'espace blanc et les commentaires dans notre HTML généré dans les projets MVC ASP.NET.</p><div class=

Suivez les étapes ci-dessous pour implémenter cette fonctionnalité sur Znode 9.X Commerce framework, comme ainsi que sur les projets ASP.NET MVC:

  1. Créez une nouvelle classe sous le dossier App_Start dans le projet de site Web Engine.WebStore ou n'importe où. Nommez la nouvelle classe MinifyHTMLViewPage.  3 "width =" 572 "height =" 548 "srcset =" https://i0.wp.com/blogs.perficient.com/files/3-1.png ? w = 572 & ssl = 1 572w, https://i0.wp.com/blogs.perficient.com/files/3-1.png?resize=300%2C287&ssl=1 300w, https://i0.wp.com /blogs.perficient.com/files/3-1.png?resize=500%2C479&ssl=1 500w "tailles =" (largeur max: 572px) 100vw, 572px "data-recalc-dims =" 1 "/> [19659014] Copiez le code source ci-dessous et collez-le dans le fichier de classe <strong> cs </strong><pre class= using System.Text.RegularExpressions; using System.Web.Mvc; espace de noms Znode.Engine.WebStore {     classe abstraite publique MinifyHTMLViewPage : WebViewPage     {         privé en lecture seule Regex rgxHtmlReg = nouveau Regex (@ "(> s + <)", RegexOptions.Compiled);         privé en lecture seule Regex rgxHtmlAll = new Regex (@ "( s + | t s + | n s * | r s +)", RegexOptions.Compiled);         privé en lecture seule Regex rgxHtmlComments = new Regex (@ "", RegexOptions.Compiled);         public override void Write (valeur d'objet)         {             if (valeur! = null)             {                 var minifyHtml = value.ToString ();                 minifyHtml = this.rgxHtmlReg.Replace (minifyHtml, "> <"); minifyHtml = this.rgxHtmlAll.Replace(minifyHtml, " "); minifyHtml = this.rgxHtmlComments.Replace(minifyHtml, ""); value = new MvcHtmlString(minifyHtml); } base.Write(value); } public override void WriteLiteral(object value) { if (value != null) { var minifyHtml = value.ToString(); minifyHtml = this.rgxHtmlReg.Replace(minifyHtml, "> <");                 minifyHtml = this.rgxHtmlAll.Replace (minifyHtml, "");                 minifyHtml = this.rgxHtmlComments.Replace (minifyHtml, "");                 valeur = minifyHtml;             }             base.WriteLiteral (valeur);         }     } }
  2. Accédez à Web.config sous le dossier Vues dans le projet de site Web Engine.WebStore .
  3. Ouvrez le fichier web.config
  4. Recherchez ce texte et remplacez-le avec dans le fichier Web.config.
  5. Générez la solution et exécutez le projet.

Après l'implémentation de la fonction HTML de Minify:

Nous pouvons voir que notre code source HTML est très différent:

 4 "width =" 1024 "height =" 527 "srcset =" https://i0.wp.com/blogs.perficient.com/files/4-1.png?resize=1024%2C527&ssl=1 1024w , https://i0.wp.com/blogs.perficient.com/files/4-1.png?resize=300%2C155&ssl=1 300w, https://i0.wp.com/blogs.perficient.com/ files / 4-1.png? resize = 768% 2C396 & ssl = 1 768w, https://i0.wp.com/blogs.perficient.com/files/4-1.png?resize=500%2C258&ssl=1 500w, https://i0.wp.com/blogs.perficient.com/files/4-1.png?resize=800%2C412&ssl=1 800w, https://i0.wp.com/blogs.perficient.com/files /4-1.png?resize=1280%2C659&ssl=1 1280w, https://i0.wp.com/blogs.perficient.com /files/4-1.png?resize=750%2C386&ssl=1 750w, https://i0.wp.com/blogs.perficient.com/files/4-1.png?resize=600%2C309&ssl=1 600w , https://i0.wp.com/blogs.perficient.com/files/4-1.png?resize=640%2C330&ssl=1 640w, https://i0.wp.com/blogs.perficient.com/ files / 4-1.png? w = 1361 & ssl = 1 1361w "tailles =" (largeur max: 1000px) 100vw, 1000px "data-recalc-dims =" 1 "/></p><p> La taille de la page est <strong> 12,5 kB </strong> et le temps de chargement est <strong> 1,67 s </strong>:</p><p> <img decoding=






Source link

Revenir vers le haut