0

我们有一个 Web 应用服务,服务器位于 Azure 的韩国地区。当我们在韩国使用网络应用程序时,延迟或速度没有问题,但是来自美国或欧洲的人似乎在使用该服务时遇到了滞后。

Azure 中是否有任何解决方案可以使来自其他区域的人们拥有与服务器在同一区域中一样的体验?

4

1 回答 1

0

为了提高性能并减少 Azure App Service 托管应用程序的延迟,您可以尝试使用以下配置来减少延迟:

  1. 启用 HTTP/2:要将应用服务配置为在门户中使用 HTTP/2,请转到“配置”边栏选项卡中的“平台设置”。在这里,您将找到一个下拉列表来指定 HTTP 版本。选择 2.0 后,任何支持 HTTP/2 的客户端都将自动升级其连接。

在此处输入图像描述

  1. 关闭应用程序请求路由 Cookie

每个 Azure 应用服务前面都有一个负载均衡器,即使您只运行应用服务计划的单个实例。

负载均衡器会拦截应用服务的每个请求,因此,当您移动到应用服务计划的多个实例时,负载均衡器可以开始根据可用实例平衡请求负载。为了提供这种行为,负载均衡器将在对客户端的第一个响应中注入一个 cookie。此 cookie 就是 Azure 所称的应用程序请求路由 cookie。

如果您有一个无状态应用程序并且可以允许负载均衡器跨实例分发请求而不考虑以前的请求,那么请关闭配置刀片中的路由 cookie 以提高性能和弹性。您不会有请求等待服务器重新启动,并且当确实发生故障时,负载均衡器可以快速将客户端转移到工作实例。

您可以在应用服务配置边栏选项卡的平台设置中找到它。

在此处输入图像描述

  1. 保持应用服务始终开启:为防止空闲关机,您可以在应用服务配置边栏选项卡中设置始终开启标志。

在此处输入图像描述

  1. 使用本地缓存
  2. 让您的客户更亲近,让您的资源更亲近
  3. 将您的应用服务和您的数据库放在一起:如果您创建了多个紧密协作的资源,您将希望将这些资源放在同一区域中。否则,您将看到网络延迟。如果这两个服务都在不同的区域,因为来自应用服务的每个数据库查询都变成了穿越大陆或世界各地的旅行。
  4. 让您的应用服务靠近您的客户:建议将您的资源放置在距离您的客户最近的 Azure 区域中。对于世界各地的客户,您通常会使用 Azure 流量管理器等技术将客户流量引导到最近的应用服务实例
  5. 保持您的应用程序在一起:多个服务可以存在于同一个应用程序服务计划中。将该计划想象成一个专用于 Web 服务器角色的虚拟机。您可以在 Web 服务器上放置任意数量的应用程序,将服务放在一起可以减少网络延迟。
于 2022-02-26T04:50:24.737 回答