0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

利用NGINX帮助您为突发的流量高峰做好准备的方法

工程师邓生 来源:NGINX开源社区 作者:F.Frances 2022-09-14 14:53 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在新冠疫情的冲击下,许多零售商的客户都改变了他们假日购物的渠道和方式。

由于人们无法去实体店购物,线上购物迎来了前所未有的新高潮——2020 年美国的电子商务销售额飙升至 1,890 亿美元,比 2019 年增长了 33%。

我们在此提供了几种利用 NGINX 帮助您为突发的流量高峰做好准备的方法。

第 1 步:知己知彼

在调整堆栈之前,最好先了解您需要在多大程度上优化您的网站性能,才能在购物狂欢季有最佳(而不是勉强合格)的表现。

先从收集竞争对手网站的性能数据开始吧。页面加载时间可能是最重要的指标,因为如今许多用户都没有耐心,只要网页加载时间超过三秒,他们就会离开。测量加载时间的工具有很多,并且大多都是免费的。

您可考虑测量以下页面的加载时间:

主页

产品搜索结果

产品详情页面

点击“购买”按钮后出现的确认页面

测试几个竞争对手和您自己的网站的关键页面只需几个小时。(在测量下载时间之前,请务必使用 Shift+Refresh 清除浏览器缓存。)有测量结果的加持,您接下来需要做的是:

制定总体性能指标

对不同的网站来说,从头到尾的整个流程(访问、搜索及购买)共需要多长时间?

确定优劣势

找出您的网站有优势、有竞争力或拖后腿的地方。

注意功能差异

竞争对手如何通过额外的功能提升购物体验?您的网站提供了哪些功能来打造独特的用户体验?

制定计划

如果您的网站在一个或多个方面远远落后于竞争对手,那么您需要努力达到他们的平均响应时间;如果您已拥有很强的竞争力,则努力成为第一名吧。

第 2 步:使用 NGINX

就像那些全球最繁忙的网站一样

2021年的早些时候,NGINX 在互联网 Web 服务器排名中荣登第一宝座。我们很荣幸有这么多网站信任我们,使用我们的产品交付网站和应用,同时我们也非常欢迎您的加入。

然而,NGINX 不仅仅是一个 Web 服务器,它还是一个一体化的软件反向代理、负载均衡器、高速缓存和 API 网关。

NGINX 最重要的优势之一是它可以大大优化进入您网站的流量。您可以将 NGINX 看作是在商店门前管理人流的看门人。

它能够对购物者的操作(HTTP 请求)进行排队和授权,就像把人行道上混乱的人群变成商店内顺畅有序的结账队列。它能够将购物者引导至购物清单上商品的特定位置,确保流量均匀分布,且所有资源都得到均匀使用。

NGINX 主要使用两种开箱即用的技术来实现这一点:

通过使用 keepalive 连接进行 HTTP 卸载,目的是缓冲缓慢到达的 HTTP 请求,并等到它们准备就绪后再将其转发到后端服务器。

相比远端客户端,从 NGINX(位于快速的本地网络)发起的事务的完成速度要快得多。

具有多种算法的成熟的负载均衡,目的是优化流量分布,并尽可能高效地使用服务器资源。

除了优化流量外,NGINX 还提供了以下四种方式帮助您优化网站,并防止流量激增期间出现服务器过载问题

通过高速缓存缩短网页响应时间

通过流量控制管理访客流量

通过按需弹性扩展增加弹性

通过内置安全防护保护客户数据

b5ce944a-3041-11ed-ba43-dac502259ad0.png

1 通过高速缓存缩短网页响应时间

很多功能都会增加在线交易的成功几率,比如点击收藏、线上下单并线下取货,甚至客户支付选项等。NGINX 的内容缓存功能与 Web 流量有着类似的效果。NGINX 会自动存储它发送给客户端的每个文件,并直接利用缓存来处理给定文件的后续请求。

高速缓存不仅可以加快对用户的响应速度,而且还可以减少上游服务器上的负载,因为对于相同的请求,它们不必总是从头开始反复进行处理。内容缓存可以将内部流量减少 100 倍,从而减少服务应用所需硬件的处理能力(具体取决于应用)。

2 使用连接、速率和带宽控制管理访客流量

在最繁忙的时段,出于安全原因(避免过度拥挤)或为了保证重要客户获得优待(VIP 时间、受邀参加的促销活动等等),商店看门人可能需要限制进店购物的人数。Web 应用也需要采取类似的措施。

您可以通过限制进入网站的流量来防止服务器过载,并确保客户端及时访问所需的资源。NGINX(在容器环境中为 NGINX Ingress Controller)提供了一系列限制入向流量的方法,包括:

并发限制 —— 限制转发到每个服务器的并发请求数,以匹配每个服务器中有限的工作线程或进程数

请求速率限制 —— 对每个来自客户端的请求按秒或按分加以限制,以防因支付网关或复杂搜索等服务而出现的服务器过载

带宽限制 —— 控制客户端可以在每个连接中可以下载的数据量

如有必要,您可以区分不同类型的客户端。您商店的配送区可能不会延伸至地球的另一端,或者您希望优先考虑购物车中有商品的用户,您可以利用 cookie、地理位置数据及其他参数来控制 NGINX 应用流量限制的方式。

3 通过弹性扩展避免服务器过载

如果您没有部署适当的基础架构,那么流量激增很容易导致服务器过载。NGINX 的轻量级事件驱动型架构可最大限度提高当前基础架构的应用交付性能。

DevOps 团队还可以利用以下 NGINX 功能来有效应对流量高峰:

在云环境中部署 NGINX 和应用。NGINX 支持在亚马逊云科技(AWS)、谷歌云平台和 Microsoft Azure 等主要云环境中使用。

每个云服务提供商都支持自动扩展以调整应用实例的数量,从而响应变化的需求。

在 Kubernetes 环境中部署容器。NGINX Ingress Controller和 NGINX Service Mesh 提供了多种功能,可增强 Kubernetes 应用的弹性。

您可以根据用户需求水平扩展应用 pod,并且几乎不会增加实时用户的延迟。

4 通过内置的安全防护保护客户数据

对于任何网站,特别是对于处理信用卡信息的在线零售商来说,确保交易安全必不可少。网络攻击可能会让品牌声誉受损和吃官司,对此零售商 Target 深有体会。Target 通过增强可视化和安全性解决了 2014 年的数据泄露问题。

为打造市场上最安全的购物体验之一,从而在竞争中脱颖而出,您可实施:

可视化策略,帮助您尽早发现漏洞

在负载均衡器和 Ingress Controller上集中进行身份验证和授权管理,助您实现稳健、易于配置的单点登录 (SSO) 功能

强大的轻量级 WAF 可防范 OWASP 十大安全漏洞和 PCI DDS 漏洞等。

服务网格可确保所有通信均经过 mTLS 加密,从而有效阻止黑客窃取网络上的敏感数据。




审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 高速缓存
    +关注

    关注

    0

    文章

    30

    浏览量

    11295
  • DDS
    DDS
    +关注

    关注

    22

    文章

    683

    浏览量

    156069
  • 负载均衡器
    +关注

    关注

    0

    文章

    20

    浏览量

    2702

原文标题:如何应对突发的流量激增和服务器过载问题

文章出处:【微信号:OSC开源社区,微信公众号:OSC开源社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Nginx限流与防爬虫配置方案

    在互联网业务快速发展的今天,网站面临着各种流量冲击和恶意爬虫的威胁。作为运维工程师,我们需要在保证正常用户访问的同时,有效防范恶意流量和爬虫攻击。本文将深入探讨基于Nginx的限流与防爬虫解决方案,从原理到实践,
    的头像 发表于 09-09 15:52 648次阅读

    东芝硬盘助力企业降本增效

    常言道,金九银十,金秋是企业冲刺业绩、迎接高峰的黄金期。订单激增、流量暴涨、数据处理需求呈指数级增长。您的企业IT系统,是否做好准备
    的头像 发表于 09-08 09:05 719次阅读

    Nginx高并发优化方案

    作为一名在生产环境中摸爬滚打多年的运维工程师,我见过太多因为Nginx配置不当导致的性能瓶颈。今天分享一套完整的Nginx高并发优化方案,帮助你的系统从10万QPS突破到百万级别。
    的头像 发表于 08-13 15:51 668次阅读

    Nginx和Apache的差异

    Nginx是一个 轻量级/高性能 的反向代理Web服务器,用于 HTTP、HTTPS、SMTP、POP3 和IMAP 协议。
    的头像 发表于 07-09 09:45 473次阅读

    做好PCBA贴片加工?这些前期准备工作要做好

    一站式PCBA加工厂家今天大家讲讲PCBA贴片加工前的准备工作有哪些?PCBA贴片加工前的准备工作。在PCBA代工过程中,贴片加工前的准备工作是确保电路板性能稳定和生产效率高的基础。
    的头像 发表于 06-25 09:23 433次阅读
    想<b class='flag-5'>做好</b>PCBA贴片加工?这些前期<b class='flag-5'>准备</b>工作要<b class='flag-5'>做好</b>!

    生成式AI爆发,企业还没AI革命做好准备

    当前,生成式AI(GenAI)的能力正以约每六个月翻倍的速度迭代,但多数企业的应用进展仍停留在缓慢的线性增长中,甚至还在观望。这种差距导致企业逐渐落后,无法释放AI带来的巨大商业价值。哈佛商学院教授KarimLakhani指出,GenAI正在重新定义“专业知识”的价值——过去稀缺的高端技能(如设计、编程、金融分析)如今可通过AI大规模复制。由于企业的核心竞争
    的头像 发表于 06-18 23:10 652次阅读
    生成式AI爆发,企业还没<b class='flag-5'>为</b>AI革命<b class='flag-5'>做好准备</b>

    Nginx配置终极指南

    Nginx 是开源、高性能、高可靠的 Web 和反向代理服务器,而且支持热部署,几乎可以做到 7 * 24 小时不间断运行,即使运行几个月也不需要重新启动,还能在不间断服务的情况下对软件版本进行热
    的头像 发表于 06-18 15:56 797次阅读
    <b class='flag-5'>Nginx</b>配置终极指南

    Nginx性能优化终极指南

    而worker 进程数默认为 1 。单进程最大连接数1024。如下图(打开Nginx目录下的/conf/nginx.conf 文档),现在我们来对这两个数值进行调优
    的头像 发表于 06-16 13:44 912次阅读
    <b class='flag-5'>Nginx</b>性能优化终极指南

    Nginx核心功能深度解析

    Nginx核心功能深度解析
    的头像 发表于 05-09 10:50 694次阅读

    Nginx缓存配置详解

    Nginx 是一个功能强大的 Web 服务器和反向代理服务器,它可以用于实现静态内容的缓存,缓存可以分为客户端缓存和服务端缓存。
    的头像 发表于 05-07 14:03 1037次阅读
    <b class='flag-5'>Nginx</b>缓存配置详解

    Nginx服务优化教程

    隐藏Nginx版本号,避免安全漏洞泄漏:修改配置文件法;修改源码法
    的头像 发表于 03-12 15:57 801次阅读
    <b class='flag-5'>Nginx</b>服务优化教程

    华为 FlexusX 与 Docker+Nginx 的高效整合之路

    前言 华为 FlexusX 携手 Docker+Nginx,高效整合,云端性能再升级!FlexusX 服务器,依托华为强大的技术实力, Docker 容器与 Nginx 服务器提供了完美的运行环境
    的头像 发表于 01-23 17:55 570次阅读
    华为 FlexusX 与 Docker+<b class='flag-5'>Nginx</b> 的高效整合之路

    Google Play如何帮助您的应用变现

    海外市场等。本文将重点介绍 Google Play 如何帮助您的应用变现。   灵活便捷的变现工具 "Google Play 已经推出和即将推出的众多变现工具一
    的头像 发表于 01-21 11:21 1090次阅读
    Google Play如何<b class='flag-5'>帮助您</b>的应用变现

    nginx+lua+redis实现灰度发布

    作者:马仁喜 前言: 授人以鱼不如授人以渔 .先学会用,在学原理,在学创造,可能一辈子用不到这种能力,但是不能不具备这种能力。这篇文章主要是沉淀使用nginx+lua+redis实现灰度,当我们具备
    的头像 发表于 12-17 10:01 739次阅读

    Nginx代理转发实战:零基础掌握服务器流量分发技巧

    Nginx 是最常用的反向代理工具之一,一个指令 proxy_pass搞定反向代理,对于接口代理、负载均衡很是实用,但 proxy_pass指令后面的参数很有讲究,通常一个“/”都可能引发一个血案
    的头像 发表于 12-09 12:28 2709次阅读