Cordial 如何利用 Cloudflare Workers 处理黑色星期五的流量激增

对于零售商来说,黑色星期五是一年中最重要的日子。但是,如果您的客户零售商,怎么办?

从用户获取到促销、个性化的废弃购物车营销活动以及交易发货确认,电子商务世界是由规模巨大的 1:1 通信渠道推动运行的。

Cordial 是一家为全球一些领先品牌提供用户参与计划的公司 ,它是一个从头开始构建的营销自动化平台,可以通过任何内容渠道(包括电子邮件、短信息、应用内通知等)传输高度个性化的消息。与大多数营销工具不同,Cordial 帮助开发人员定制产品以适应他们的需求,同时保留直观易用的前端,因此营销人员无需技术资源即可执行复杂而有影响力的业务流程。

Cloudflare 的不同之处

在 2018 年初,Cordial 改用 Cloudflare 作为其网络提供商。Cordial 的平台架构师 Daniel Smith 说,他们见证了可立刻获取的重大改进,并解释说:“无需进行额外开发,我们就立即获得了巨大的收益。”

将 Cordial 迁移至 Cloudflare 的网络后,发送到 Cordial 服务器的 80% 的请求被骤然路由到 Cloudflare,从而节省了大量带宽并大大改善了性能。更棒的是,通过启用 Cloudflare 的 Argo Smart Routing,Cordial 发现其 API 服务器延迟下降,平均响应时间从启用 Argo 前的 650 毫秒下降到 403 毫秒,第一天就降低了超过 35%。

Cordial 图像 1,启用 Argo,不可缓存

不可缓存的 API 请求延迟(越低越好)

Cordial 图像 2,Argo,静态

静态内容延迟(越低越好)

随着一年中最重要的周末临近(紧邻黑色星期五和网络星期一),这些改进变得尤为重要。

Cordial 不是一家零售公司,但其客户却是。黑色星期五是一年一度的促销大奋战活动,要么全力以赴,要么坐以待毙。在线购物者缺乏耐心,网络性能不佳或链接断开足以让其转而选择竞争对手的产品。Cordial 需要站在游戏的顶端:它必须像零售商一样思考,在黑色星期五到来前几周预测和管理大量的流量,并在当天应对汹涌而至的巨大流量。

Cloudflare 的 Content Delivery Network 和 Argo Smart Routing 帮助 Cordial 打下了坚实的基础。但针对这次重要活动,Cordial 使用了一个强大的新工具:Cloudflare Workers

Workers 准备就绪

Cloudflare Workers 的核心是一个革命性的概念:使用 Cloudflare 全球云网络中的服务器(即距每个访问者最近的计算机)来执行沙箱代码,而无需专用的虚拟机或容器。通过缩短浏览器与处理请求的计算机之间的距离,Cloudflare Workers 可以从根本上减少延迟,从而以较低的成本获得巨大的性能提升。

在黑色星期五的前期准备中,Cordial 构建了数十个微型应用程序,平台架构师 Daniel Smith 称其为“一系列 Workers”,公司随时准备进行部署。各 Worker 适合处理特定的工作,例如减少疑似垃圾流量,或在关键时刻将某些类型的请求路由到特定的服务器以减少负载。团队还起草了相应的“活动日”文档,概述了哪些突发事件应调用哪个 Worker。

最终,当黑色星期五周末活动席卷互联网时,Cordial 做好了准备。它通过一系列 Workers,发送了数百万封电子邮件、短信和其他信件,没发生任何故障。

展望未来

Cordial 还发现了使用 Cloudflare Workers 的其他创新方法。当一位客户请求某种功能(在客户的电子邮件中生成并嵌入自定义条形码的方法)时,Cordial 使用 Workers 开发定制应用程序。Cordial 的 Workers 应用程序使用编译为 Web 组件的 Rust,可在 Workers 中即时生成并交付条形码图像,而无需启动任何其他服务器(访问此链接查看具体操作)。更棒的是,Smith 说,自从部署该应用程序以来,团队几乎无需再为其费心。

“如果没有 Cloudflare Workers,我们将需要管理另一个服务器集群来运行此微服务,这意味着额外的维护成本和开销。有了 Workers,我们不必担心了。”——Cordial 平台架构师 Daniel Smith

cordialoncloudflare

 <center><em>由 Cordial 的 Workers 应用程序即时生成的条形码</em></center>
Cordial 如何利用 Cloudflare Workers 处理黑色星期五的流量激增
相关案例研究
主要成果

•现在 80% 的请求都被路由到 Cloudflare 服务器,从而节省了大量资金并提高了性能

•使用 Argo Smart Routing,第一天就将 API 服务器延迟降低了 35% 以上

•建立一系列自定义 Cloudflare Workers,以实时管理流量需求

若没有 Cloudflare Workers,我们将需要管理另一个服务器集群来运行此微服务,这意味着额外的维护成本和开销。有了 Workers,我们不必担心了。

Daniel Smith
Cordial 平台架构师