就是这样,人! 它已经到了。 本系列最需要的文章! 我的系列文章的最后和第4部分“我如何为家居装饰品牌建立最快的电子商务商店”仅关注Web应用程序性能优化。 本文将帮助您如何提高Web应用程序的性能,以及一些技巧和优化技巧,以使它更上一层楼。 如果您还没有阅读前面的部分,请访问以下链接:

1.第一部分

2. 第2部分

3. 第3部分

我相信这篇文章将是您完成应用程序开发的艰苦部分并希望为最终用户提供更快,更流畅的体验之后的最终入门指南。

各种参数都涉及提高Web App性能。 但是在解决性能问题之前,您需要了解导致应用程序运行缓慢的根本原因。 以下主题是我们将在此处讨论的主题。

1.您的应用程序运行速度不如预期的3个原因

2.如何真正提高Web应用程序的性能?

在开始之前,我想告诉大家,我的下一篇文章将在“有用的工具和资源的终极清单上,以提高Web应用程序的性能”。 它将包括我在构建更快的Web应用程序中亲自使用的所有内容Visit- https://medium.com/better-programming/the-definitive-guide-to-boosting-your-web-application-performance-2b172574f37f

3个为什么您的应用程序运行速度不如预期的原因

1.捆束尺寸

捆绑包大小是您应用的生产版本的总大小。 建议束大小应小于644 Kb(未压缩)。 如果不是644 Kb,则必须设法将其至少保持在1000 Kb以下。

是什么导致高包装尺寸?

导入不必要的模块是导致捆绑包尺寸高的主要原因。 您应该仅导入所需的模块。 如果要仅使用该库中的button元素,请避免导入CSS库的整个程序包。 有时,即使您已将main.js / app.js文件拆分为多个块,index.html仍然会调用这两个文件,从而增加了页面加载时间。 它发生在我身上,所以我建议您在部署之前先看一下index.html文件。

2.未优化的图像

假设您的应用在移动设备和台式机上渲染相同的图像。 由于更大的显示器,台式机需要高分辨率的图像,但移动显示器则不是这种情况。 它们需要很小的空间来显示图像,因此有必要降低移动显示器的图像分辨率。 这种小的调整可以单独将图像尺寸减少30%到40%。 在本文中,我将回答如何大幅度减小图像尺寸。

3.大量的网络请求

Web应用程序正在通过向服务器发出的HTTP请求加载内容。 请求越多,完全呈现应用程序所花费的时间就越多。 您可以通过chrome开发人员工具中的“网络”标签对此应用进行调查。 基本上,限制在初始负载下传输的资源数量。 延迟加载路由是减少初始加载时发出的网络请求数量的好方法。

如何真正提高Web应用程序的性能?

1.代码拆分

代码拆分是提高Web应用程序性能的最有效方法。 使用捆绑程序构建应用程序时,JavaScript捆绑程序可能会变得很大,从而影响页面加载时间。 如果您可以将每个路线的组成部分拆分为一个单独的块,并且仅在访问路线时才加载它们,则效率会更高。 延迟加载路由是一种实现代码拆分的流行技术。 每个主要框架都有不同的方法来实现代码拆分,但是基本概念是相同的。

仅当您访问examplewebsite.com/0时,才调用与0.html相关的CSS,Js和Media内容。

有用的资源-https://developers.google.com/web/fundamentals/performance/optimizing-javascript/code-splitting/

https://hackernoon.com/the-100-correct-way-to-split-your-chunks-with-webpack-f8a9df5b7758

2.摇树

您是否知道导致应用程序捆绑包大小超过1000 kb的原因? 您可能要在main.js中导入的NPM软件包过多! 解决此问题的一个简单解决方案是使用ES模块。 使用ES模块时,Webpack可以进行树状摇动。 摇树是指捆绑器遍历整个依赖项树,检查使用了哪些依赖项,并删除未使用的依赖项。 因此,如果使用ES模块语法,则Webpack可以消除未使用的代码:

导入整个模块:

import * as myModule from '/modules/my-module.js' ;

使用ES模块命名为Import:

import {myExport} from '/modules/my-module.js'

*要使用ES6,必须在项目中设置babel编译器。

有用的资源: https : //developers.google.com/web/fundamentals/performance/optimizing-javascript/tree-shaking/

3.优化图像

图像因占用大量带宽而声誉不佳。 平均网页资源的50%是图片。 看到它们逐像素加载很痛苦,这表明网站运行缓慢且未优化。

如何优化图像?

1.降低图像分辨率

如您所见,浏览器仅需要244 x 86像素的图像,但必须下载全分辨率图像,从而导致不必要的带宽消耗和缓慢的加载。 您可以为不同的屏幕尺寸投放不同的图像。 这是Google工程师写的一篇很棒的文章,介绍了如何实现这一目标!

2.压缩图像

老实说,很难找到一款出色的压缩工具。 我已经在互联网上爬了很长时间了。 无论如何,我将在此类优化工具的终极列表上发布文章,以帮助您节省时间并获得优化的图像。

南瓜 是压缩图像的绝佳选择。 Squoosh由运行developers.google.com/web的Google Web DevRel团队维护。 如果您使用的是Mac OS X,我建议您使用iResize 目前,我将这两种工具都用作优化图像的主要选择。

完成所有这些操作后,请确保使您的应用程序成为一名良好的服务工作者。 服务人员仅在首次加载后才有用! 因此,首先,您必须通过我们讨论的上述技术,使其在初始负载时更快。 Workbox是Google的出色工具,可在您的应用中实现服务工作者。 它易于配置,可以通过CLI进行访问。

一些奖励技巧列表

1.使用Webpack优化插件,例如UglifyJs , ModuleConcatenate和Splitchunks。

2.通过删除html文件的<link>和<script>标记中存在的一些不必要的rel =“ preload”或rel =“ prefetch” ,避免过多的预加载。

3.尝试通过CDN传送图像,并注意是否看到任何积极的区别。

4.访问https://developers.google.com/web/进行任何查询,它将为您带来奇迹!

最后,我要感谢大家对本系列的出色反应。 希望我们很快能在另一篇文章中见面并交换意见,以帮助Web开发社区发展。 另外,如果您有任何要问的问题,请访问 https://twitter.com/SwanandKadam5 随时与我联系

谢谢!

From: https://hackernoon.com/how-i-built-the-fastest-e-commerce-store-for-a-home-decor-brand-part-4-wg8y38wp

我如何为家居装饰品牌建立最快的电子商务商店[部分4]相关推荐

  1. php家居装饰装修系统_我如何为家居装饰品牌建立最快的电子商务商店[第4部分]...

    php家居装饰装修系统 就是这样,人! 它已经到了. 该系列最抢手的文章! 我的系列"我如何为家居装饰品牌建立最快的电子商务商店"的最后一部分和第4部分将仅关注Web应用程序性能优 ...

  2. part1 part2_我如何为家居装饰品牌建立最快的电子商务商店[PART 2]

    part1 part2 权威指南 在Google的性能,SEO和PWA测试中获得100%的评分 欢迎回来! 这是一系列激动人心的文章的第二部分,我将撰写有关如何为艺术家居装饰品牌" Apra ...

  3. 我如何为家居装饰品牌建立最快的电子商务商店[PART 2]

    权威指南 在Google的性能,SEO和PWA测试中获得100%的评分 欢迎回来! 这是一系列激动人心的文章的第二部分,我将撰写有关如何为艺术家居装饰品品牌" Aprakrta"建 ...

  4. php家居装饰装修系统_我如何为家居装饰品牌打造最快的电子商务商店[第1部分]...

    php家居装饰装修系统 翻译自: https://hackernoon.com/https-hackernoon-com-how-i-built-the-fastest-online-store-fo ...

  5. 通过QUIC 0-RTT建立更快的连接

    本文主要探讨TLS协议,看看它如何允许客户机开始发送HTTP要求,并且无需等待TLS握手完成即可减少延迟.建立更快的连接.此外,之中会有一些风险如通过API端点发送HTTP请求间的bank API重放 ...

  6. 0706 - 个人品牌建立

    昨天,被有才拉去录「比特新声」,聊得挺开心,主要是价值观比较契合,所以有的聊. 期间必然地聊了过去,比如当初为什么走上独立开发这条路,等等.这也让我不自觉地回想这条路.想想,从名不见经传的开发者,到目 ...

  7. 小型企业5种实惠的品牌建立策略

    icu 促销又来啦 10月31日之前来DNSPod注册 新注首年仅需5元 除了医学用词,如何赋予.icu更多的含义?中小企业如何利用.icu树立自己的品牌形象?仔细阅读文章,寻找答案. 为什么要为中小 ...

  8. 如何使用WordPress建立亚马逊会员商店

    Do you want to create an Amazon affiliate store using WordPress? 您是否要使用WordPress创建亚马逊会员商店? An Amazon ...

  9. 从“电商合伙人”到“品牌掌柜”,快手电商“军训”进行时

    图文来源于网络 文|陈小江 来源 | 螳螂财经(ID:TanglangFin) 近日,快手电商动作频频. 3月13日,快手商业化发布了"品牌掌柜计划",美的.荣耀.自然堂.森马.巴 ...

最新文章

  1. Android上传队列使用
  2. 简事二三 之 http缓存机制
  3. vtk类之vtkFixedPointVolumeRayCastMapper :一个固定像素点的体数据映射器
  4. char 类型与lpcwstr_「lpctstr」char* 与 LPCTSTR 类型的互相转换 - seo实验室
  5. dorado 7 怎么样_一点点奶茶怎么样?消费者眼中的网红奶茶
  6. 财务人员工资那么低,财务工作真的有价值吗?
  7. python闭包小例子
  8. 影响程序运行速度的几个因素
  9. mmlspark-101: TrainClassifier
  10. 数字信号处理重要学习资源
  11. 仿真工具NS3的基本知识
  12. 跨站点设置 Cookie
  13. 地质大学计算机学院实验室,中国地质大学
  14. 批量修改照片名称的快速方法
  15. Android单元测试 Instrumentation
  16. Linux-命令 返回上一级目录
  17. 损失函数、梯度和学习率的理解及用python实现梯度下降法
  18. 蓝牙室内定位UWB多技术融合趋势
  19. 关于MP4文件格式解析
  20. 如何在万米高空畅享5G?

热门文章

  1. 判断一个字符串是否是对称字符串
  2. 人 男人 女人 与猪
  3. 51单片机 定时器0中断实现1秒LED流水灯
  4. Sangfor_NGAF学习笔记4
  5. 大疆M100无人机 妙算Manifold 深度学习视觉伺服系统 学习历程(一)妙算Manifold环境配置
  6. ES聚合之Pipeline聚合语法讲解
  7. DPDK Programmer’s Guide(3)环境抽象层(EAL)
  8. Discussion about a software solution to the mutual exclusion problem | Hyman
  9. linux cgroup技术介绍
  10. 【CVPR2018】Squeeze-and-Excitation Networks (SEnet)