如何处理特定日期电子商务网站的意外巨大流量?

How to handle unexpected huge traffic for ecommerce website on specific days?

我们正在开发一个电子商务网站,现在我们有 2 个专用的 Web 服务器和 1 个专用的数据库服务器。我们在这 2 个 Web 服务器后面有负载平衡器。现在一切正常,因为我们每天都有特定数量的用户登录,而且我们当前的设置没有遇到任何性能问题。

节日期间会有一些促销和优惠活动,此时我们可能会面临巨大的网站访问量。如何处理这种情况?

是否有任何特定工具可用于处理这种情况? AWS 或 Azure 是否为此提供了任何功能?我们可以使用他们的任何不同技术吗?

提前致谢。

Azure Autoscale 非常适合这种情况。

Azure 中的自动缩放是云服务、移动服务、虚拟机规模集和网站的内置功能,可帮助应用程序在需求变化时发挥最佳性能。当然,性能对于不同的应用程序意味着不同的东西。一些应用程序受 CPU 限制,其他应用程序受内存限制。

Autoscale 允许您添加资源来应对负载的增加,还可以通过删除闲置的资源来节省资金。您为 运行 指定最小和最大实例数,并根据一组规则自动添加或删除 VM。

设置最小值可确保您的应用程序即使在没有负载的情况下也始终 运行ning。设置最大值会限制您可能的每小时总成本。您可以使用自己创建的规则自动在这两个极端之间进行缩放,如下所示:

以您为例,由于您的应用程序可能需要在一年中的某些时间处理请求高峰,因此 Autoscale 可以通过任何内置平台指标或您定义的自定义指标来扩展您的服务,以满足需求增加。

这将使您能够根据需要使用尽可能多的容量,随着负载增加而扩展,并在不需要额外容量时扩展,所有这些都会自动发生。

以下是一些额外的资源,它们解释了有关 Azure 中可用选项的更多信息,以及最佳实践和应用程序设计注意事项,供您参考:

除了配置自动缩放之外,您还可以评估使用 Azure CDN 实施缓存策略(如上文所述的 @Nancy),以高效地向用户提供 Web 内容并最大限度地减少延迟。