大数跨境

3 项后端修复以提升页面加载速度

3 项后端修复以提升页面加载速度 电商实践
2016-12-30
2
导读:页面速度是影响搜索排名和转化率的重要因素。页面速度的每一点提升都可能带来更多销售额。我们已

页面速度是影响搜索排名和转化率的关键因素,每一点提升都可能带来更多销售。

此前我们已在《提升电商网站速度的10种方法》及《Google Analytics:利用网站速度数据提升转化率》中探讨过该话题,但尚未涉及后端软件对速度的影响。实际上,服务器创建并发送页面的速度越快,整体页面加载也就越迅速。

本文将介绍三种提高后端性能和页面速度的核心策略。

增加更多更快的服务器

为商店添加更多或更快的服务器可显著改善页面速度,增强处理高流量并保持高性能的能力。

这类似于高速公路系统:车流较少时通行顺畅;但随着车流量增加,车速减慢甚至引发拥堵。Web服务器的承载能力同样有限,流量激增或拒绝服务攻击都可能导致系统过载乃至崩溃。

提升服务器性能通常有两种选择:

  • 迁移至更大、更快的服务器,大幅提升网页处理速度;
  • 增加服务器数量以分担流量压力。

沿用高速公路类比,升级服务器如同提高限速,让交通更快通行;增加服务器则类似扩建车道,允许更多车辆同时行驶。

两种方式各有优劣。增加服务器的开发成本通常较低,但达到一定规模后可能不再提升性能,甚至产生反效果。此外,不同电商平台对这两种方式的响应程度各异,建议咨询开发人员以确定最适合的方案。

总体而言,对于加载缓慢的网站,更换或增加服务器通常是首要建议。

数据和 SQL 优化

加速后端系统的第二种技术是评估内容加载机制(如图片、文本、价格),这通常涉及数据库SQL查询的优化。

应用程序请求数据的频率越高,页面响应越慢。单次查询与十次查询、获取1MB数据与100MB数据之间的性能差异可能极为显著。

单个电商网站通常存在六七个导致性能下降的查询。建议使用分析器(profilers)工具检测系统性能瓶颈。

我曾优化过一个电商网站以应对假日流量。该站每晚通过批处理作业解析客户订单,单笔订单处理耗时200至300毫秒,看似较快。但由于每晚需处理30万笔订单,整个批处理作业耗时达16至25小时。若处理延迟,新旧批次重叠会导致双双失败。

经数日优化,我将单笔订单处理时间降至30毫秒,总处理时长缩短至约2.5小时。问题根源在于:尽管单条查询很快,但累积的查询量拖慢了整体进程。虽然此例未影响前端加载,但在其他场景下可能会造成负面影响。

缓存

第三种提速技术是缓存。与其每次访客请求时动态生成HTML,不如将页面生成一次并保存,供后续访客直接复用。

这意味着耗时的SQL查询和代码仅执行一次,后续访问可直接跳过这些操作。

缓存支持多层级应用,灵活性极高:

  • 缓存整个页面;
  • 缓存页面局部区域;
  • 缓存对象(如代码、数据及计算结果)。

电商应用通常难以缓存整页。例如,若缓存购物车内容,新访客可能看到前一位顾客的商品,体验极差。因此,缓存对象和部分页面更为适用。

在上述夜间批处理优化案例中,我为每笔订单的计算结果创建了缓存,供夜间报告调用,有效减少了处理时间。

缓存的核心难点在于制定刷新规则。保留时间过长可能导致展示过时信息(如显示有货实则售罄);刷新过于频繁则会增加服务器负担,反而拖慢网站速度。

【声明】内容源于网络
0
0
电商实践
电商实践
内容 8051
粉丝 0
电商实践 电商实践
总阅读15.4k
粉丝0
内容8.1k