大数跨境

如何度过“黑色星期五”

如何度过“黑色星期五” 俄区外贸通
2018-11-20
2
导读:“黑色星期五”(Black Friday)是促销高峰期,期间网站访问量和移动应用使用量显著增加。Selectel 平台管理方向负责人安东·巴拉基列夫及其同事向 e-pepper.ru 的读者介绍了如何

黑色星期五是销售高峰期,网站访问量和移动应用使用量都会显著增加。Selectel管理方向负责人安东·巴拉基列夫 向 e-pepper.ru 的读者介绍了如何在“热销期”到来之前测试网站能否承受高负载,以及在促销期间如何成功应对订单洪峰。

Selectel 专家为在促销季承担基础设施运维工作的人员提供了建议。本文对于希望确保电商网站能够应对峰值流量的所有读者同样具有参考价值。

  • 2017年,“M.Video”在线商店周五和周末的流量较10月周末几乎增长了一倍。
  • 2017年,KupiVip的流量比11月普通日子增长了126%,比去年同期活动增长了75%。

在企业家决定哪些商品可以享受折扣时,很少有人会问:网站能否承受得住。

2017年“黑色星期五”聚合网站访问量,SimilarWeb

IT基础设施也有其“沸点”。由于购买活动激增,服务可能停止运行或响应迟缓,购物车卡顿,发货停滞。该怎么办?

识别故障点并预测负载

从压力测试开始准备。您将了解在线商店能够同时处理的最大请求(会话)数量。

自行评估负荷

为了了解最大允许负载,可以自行组织测试,例如使用Yandex.Tank。这是一个每秒生成数万HTTP请求的生成器。要启动负载测试,请遵循官方文档。

可以根据促销活动期间的销售计划和历史转化率数据来预测“黑色星期五”期间商店的负载。计算示例可以在文章《负载计算方法论》中找到。

将预测结果与压力测试的实际结果进行对比——如果预测值超过测试结果80%,根据经验需要额外投入资源。在“黑色星期五”期间,尤其要充分考虑所有吸引客户的活动,并准确预测网站访问量的峰值。

例如,一次向10,000名客户发送的邮件在首小时转化率为10%,将导致每小时产生1,000次会话;而分10次、每次向1,000人发送、间隔1小时的邮件,则每小时仅产生100次会话。

通常,互联网项目由多个模块组成,例如数据库、Web服务器和缓存系统。每个模块都需要不同类型的资源以及不同的资源量。因此,在分析负载时,不仅需要采集项目的响应指标,还需要采集各模块的资源消耗指标:磁盘I/O速度、CPU时间和内存使用情况。同时,请关注分配的带宽是否足以应对预期的负载,必要时可能需要增加通道宽度。努力确定系统中成为“瓶颈”的模块或节点——这些就是潜在的扩展点。

邀请专家进行测试

可以将压力测试任务外包给承包商,同时自行进行“黑色星期五”的内部准备工作。

“我们将迅速进行审计、负载测试并对整体基础设施进行评估。审计后,您将收到一份关于为‘黑色星期五’做准备的建议报告。如有需要,我们将在服务器上开展工作:将项目迁移到Selectel基础设施,消除瓶颈,连接并配置监控,当然,我们还将全天候支持服务器。”

Selectel系统管理员团队负责人 Vitaly Prokofiev

根据负载调整资源

发现需要额外资源后,即可开始扩展基础设施。

自行提升容量

1. 垂直扩展——如果您确信负载预测且需要一个简单的解决方案

如果网站的“引擎”能够通过增加服务器功率来支持更多的会话数,这种扩展方式称为垂直扩展。通过更换处理器、安装额外内存或更换磁盘来提升服务器功率。这需要停机维护,因此应提前规划此类操作,并在用户活动最少的时间段内快速完成。服务器升级后,其所有资源将始终对所有用户可用。

让我们通过一个例子来说明。想象一下,你有一只松鼠,它通过在轮子里奔跑为用户的灯泡发电。你预计会有更多客人来访,因此为了获得更亮的光线,你提前买了一个大轮子,在里面放入两只松鼠——就这样。轮子越大、里面的松鼠越多,松鼠发电机的产出就越高。在提升发电机功率(即扩展)时,需要在更换轮子和放入额外松鼠期间暂时关灯。然而,这种方式很方便,因为它所需的努力最小。

垂直扩展的核心

  • 只需几次点击即可在云中增加资源

当基础设施已经在云中时,垂直扩展只需在控制面板中点击几个按钮,选择所需的CPU核心数、内存和磁盘空间即可。例如,在Selectel中,“虚拟私有云”和“基于VMware的云”就是按照这种原理工作的。

在VPC中更改虚拟机配置


“根据您的任务创建并配置基于OpenStack的云,由虚拟机和网络组成。您可以将在不同可用区中的虚拟机合并到一个统一的局域网中,从而创建一个容错系统。”

Selectel高级产品经理 Daniil Pivovarov

  • 提升物理服务器的性能

“增强服务器”意味着迁移到更强大的硬件设备。

“预配置服务器在1-2小时内提供,定制组装则在五个工作日内完成。服务器将接入局域网和互联网,并提供不间断电力供应、适宜的微气候环境以及维护服务。”

Selectel产品经理 康斯坦丁·安西莫夫

2. 水平扩展——如果您无法准确预测负载,且愿意接受复杂的实现方案

在水平扩展中,通过向现有服务器添加新服务器来增加可处理的会话数量。

让我们回到“仓鼠跑轮”的例子:一只仓鼠在跑轮中奔跑,为单个用户的灯泡发电。当您要招待客人时,为了获得更大的能量,您又买了一只仓鼠跑轮。您将“新来的”放在第一只旁边,并用导线将它们连接起来。现在灯光足以满足所有人的需求。更多的跑轮和仓鼠意味着更高的能源产出。

水平扩展的核心

系统升级无需切断电源即可添加新的仓鼠。但关键在于以正确的方式并及时地接入新的仓鼠。

为了实现水平扩展,系统必须能够在集群上运行,而不是单台机器。如果以前对您的系统没有这样的要求,那么短时间内自行实现水平扩展将会很困难——需要对系统进行修改,因为需要集群组件的整体同步以及所有或部分网络节点上的负载均衡器。负载均衡器是一组用于平衡负载的特殊方法。例如,在“基于VMware的云”中,实现了完整的VMware NSX功能,包括Load Balancing——具有动态虚拟IP和服务器组配置的应用层(L4/L7)负载均衡器。

通过使用硬件和软件工具可以实现负载均衡——Selectel的管理员也能在此问题上提供帮助。负载均衡器将按集群中的服务器分配请求,以使响应时间最小化,并最大限度地有效利用资源。

Selectel系统管理员团队负责人 维塔利·普罗科菲耶夫

  • 在云中:当基础设施位于云中(例如在“虚拟私有云”或“基于VMware的云”中)时,创建新的虚拟机只需几秒钟。
  • 在硬件上:“加强基础设施”意味着额外购买专用服务器。
  • 混合解决方案:通过将部分基础设施迁移到云中,创建一个由物理服务器和虚拟服务器组成的解决方案。物理服务器上可以运行持续负载,而按用量付费的云则用于处理活动期间所需的临时需求。这样可以减轻承载服务的主服务器的负担,并为增加负载创建备用容量。

水平扩展的一个重要优势在于,如果进行负载监控,那么添加新服务器非常简单。

使用工具Zabbix方便地实现负载监控,并使用Grafana仪表板对获取的数据进行可视化。

可以通过自动添加新服务器并进行负载均衡来消除手动监控负载的需求。为此可能需要预先编写负载均衡器脚本:配置好的负载均衡软件与云API结合,能够创建自动扩展解决方案。

在仓鼠发电机的例子中,基础设施的自动扩展场景非常理想:仓鼠会自动带着跑轮加入系统,而您只需坐在海边查看报告,了解最终需要多少只仓鼠才能完成灯光秀。

自动扩展的核心

通过VPC Selectel云的API,可以创建、删除和更改机器的配置(在beta测试模式下还可使用Kubernetes)。

所需资源的成本在创建虚拟机时就会体现,因此可以轻松评估“黑色星期五”期间潜在所需资源的成本。当负载增加时,可以轻松购买所需的资源并按实际使用情况付费。

聘请来自提供商的IT架构师

可以迁移到更强大的硬件或在云中实现可扩展架构——只需向云架构师提出任务即可。多云战略具有特殊意义,即使用两个或多个云服务提供商的服务,这些提供商之间可以相互集成。这种基础设施构建方式允许选择最适合特定任务和特定负载类型的功能组合。基础设施可以在私有云、公有云中实现,也可以是它们的组合(混合云)。

“多云解决方案的优势在于构建在能力、价格、灾难恢复能力、响应时间(能够选择离用户最近的数据中心)方面最优的架构,以及避免供应商锁定风险,即不依赖于特定的服务提供商。目前,我们可能是俄罗斯唯一一家基于自有数据中心以及Amazon Web Services、Microsoft Azure、Google Cloud Platform和Alibaba Cloud的解决方案实施现成的multi-cloud项目的公司。”

Selectel集成总监 德米特里·雷日索夫

准备防御DDoS攻击

在“黑色星期五”期间,网站无法正常运行,不仅是因为无法应对大量真实用户的访问流量,还可能是因为遭受DDoS攻击。这些攻击可能由希望将流量重定向到其自身资源的恶意攻击者发起。

  • 2017年,b-friday.com平台“黑色星期五”促销活动的组织者遭受了针对其服务器的DDoS攻击。网站成功应对了流量冲击,并未宕机。

为避免受到与网络威胁相关的不便,请确保接入身份验证和DDoS攻击防护服务。专用的实时DDoS及入侵防护系统会扫描并分析入站流量,识别潜在攻击并进行拦截。

如需接入防护服务,可能需要将网站迁移至运营商的基础设施,因此请在促销活动开始前2-3周确认相关事宜。

“Selectel的DDoS防护服务一直在不断发展。这不仅仅是因为改进了过滤算法。目前的套餐从每月2,500卢布起——这笔金额甚至低于最简单攻击造成的损失。技术支持的反应速度为5分钟。此外:还有单独的带有负载变化统计信息的个人帐户。可以将该服务连接到我们的任何服务。”

Selectel产品经理 奥尔加·莫斯科夫采娃

加速内容加载

在促销期间,由于服务器负载显著增加,在线商店网站上的商品描述和图片加载时间很长。JavaScript库和CSS也会加重页面加载负担。如果用户没有等到网站的快速响应,即使优惠比竞争对手更有吸引力,他们也会离开。请使用服务PageSpeed Insights来检查页面加载速度。

帮助加快页面加载速度的是内容分发网络(CDN)。这种地理分布式的网络由缓存节点——即全球各地可能部署的接入点组成。在促销期间访问网站时,客户获取的信息并非来自您的服务器,而是来自属于CDN网络且距离他们更近的服务器。由于缩短了服务器与用户之间的传输路径,网站数据的加载速度得以提升。


得益于优化的内容分发路径,CDN不仅提升了页面加载速度,还显著减轻了主服务器的负载。这样一来,您便“一石二鸟”——通过更快的网页加载速度提高了转化率,同时降低了扩展核心基础设施的成本。

Selectel产品经理 康斯坦丁·安西莫夫

本文根据广告合作条件发布。

【声明】内容源于网络
0
0
俄区外贸通
各类跨境出海行业相关资讯
内容 15477
粉丝 0
俄区外贸通 各类跨境出海行业相关资讯
总阅读429
粉丝0
内容15.5k