

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 地理位置临近度路由
<a name="routing-policy-geoproximity"></a>

地理位置临近度路由能让 Amazon Route 53 根据您的用户和资源的地理位置将流量路由到您的资源。它将流量路由到位置最近的可用资源。（可选）您也可以通过指定一个值来增加或减少路由到指定资源的流量，该值称为*偏差*。偏差可以增加或减少路由到某个资源的流量所来自的地理区域的大小。

为您的资源创建地理位置临近度规则并为每个规则指定以下值之一：
+ 如果您使用的是 Amazon 资源，请指定您在其中创建资源的 Amazon Web Services 区域 或本地区域组。
+ 如果您使用的是非Amazon 资源，请指定资源的纬度和经度。

要使用 L Amazon ocal Zones，必须先启用它们。有关更多信息，请参阅《Amazon Local Zones 用户指南》中的 [Local Zones 入门](https://docs.amazonaws.cn/local-zones/latest/ug/getting-started.html)。**

要了解 Amazon Web Services 区域 和 Local Zones 之间的区别，请参阅 *Amazon EC2 用户指南*中的[区域和区域](https://docs.amazonaws.cn/AWSEC2/latest/UserGuide/using-regions-availability-zones.html)。

（可选）要更改 Route 53 路由到某个资源的流量所来自的地理区域的大小，请为该偏差指定一个适用值：
+ 要扩大 Route 53 从中将流量路由到资源的地理区域的大小，请为该偏差指定一个介于 1 和 99 之间的正整数。Route 53 将缩小相邻区域的大小。
+ 要缩小 Route 53 从中将流量路由到资源的地理区域的大小，请指定一个介于 -1 和 -99 之间的负偏差。Route 53 将扩大相邻区域的大小。

**注意**  
我们正在更新 Route 53 的 Traffic Flow 控制台。在过渡期间，您可以继续使用旧控制台。

选择您正在使用的控制台的选项卡。
+ [新控制台](#traffic-flow-geoprox-routing-map-new)
+ [旧控制台](#traffic-flow-geoprox-routing-map-old)

------
#### [ New console ]

下图显示了四张 Amazon Web Services 区域 （编号为 1 到 5）：

1. 美国西部（俄勒冈州）

1. 欧洲地区（法兰克福）

1. 亚太地区（东京）

1. 非洲（开普敦）

1. 中东（巴林）

**注意**  
这些地图仅适用于 Traffic Flow。

![\[此世界地图显示当您拥有美国西部（俄勒冈州）、欧洲（法兰克福）、亚太地区（东京）、非洲（开普敦）和中东（巴林）等 Amazon Web Services 区域 中资源的地理位置临近度时如何路由流量。\]](http://docs.amazonaws.cn/Route53/latest/DeveloperGuide/images/traffic-flow-geoproximity-no-bias-new.png)


以下地图显示如果您为美国西部（俄勒冈州）区域（地图上的编号为 **1**）添加了偏差值 \$125 时，将发生的情况。相比从前，来自更大面积的北美区域以及所有南美区域的流量将路由到该区域中的资源。

![\[此世界地图显示当您在美国东部（弗吉尼亚北部）区域中添加了偏差值 +25 时，如何路由流量。\]](http://docs.amazonaws.cn/Route53/latest/DeveloperGuide/images/traffic-flow-geoproximity-bias-plus25-new.png)


以下地图显示如果您将美国西部（俄勒冈州）区域的偏差值改为 -25 时，将发生的情况。**流量从北美和南美的较小部分路由到该区域的资源，路由到邻近区域 **2**、**3** 和 4 的资源的流量也更多。**

![\[此世界地图显示当您在美国西部（俄勒冈州）区域中添加了偏差值 -25 时，如何路由流量。\]](http://docs.amazonaws.cn/Route53/latest/DeveloperGuide/images/traffic-flow-geoproximity-bias-minus25-new.png)


------
#### [ Old console ]

下图显示了四个 Amazon Web Services 区域 （编号为 1 到 4）以及南非约翰内斯堡的一个由纬度和经度 (5) 指定的位置。

**注意**  
这些地图仅适用于 Traffic Flow。

![\[一张世界地图，显示当你有美国西部（俄勒冈）、美国东部（弗吉尼亚北部）、欧洲（巴黎）和亚太地区（东京）的资源的地理位置记录，并且你有南非约翰内斯堡的非Amazon 资源记录时，交通是如何路由的。 Amazon Web Services 区域\]](http://docs.amazonaws.cn/Route53/latest/DeveloperGuide/images/traffic-flow-geoproximity-map-example-no-bias.png)


以下地图显示如果您为美国东部（弗吉尼亚州北部）区域（地图上的编号为 **2**）添加了偏差值 \$125 时，将发生的情况。相比从前，来自更大面积的北美区域以及所有南美区域的流量将路由到该区域中的资源。

![\[此世界地图显示当您在美国东部（弗吉尼亚北部）区域中添加了偏差值 +25 时，如何路由流量。\]](http://docs.amazonaws.cn/Route53/latest/DeveloperGuide/images/traffic-flow-geoproximity-map-example-bias-plus-25.png)


以下地图显示如果您将美国东部（弗吉尼亚州北部）区域的偏差值改为 -25 时，将发生的情况。相比从前，来自较小面积的北美和南美区域的流量路由到该区域中的资源，更多流量路由到临近区域 **1**、**3** 和 **5** 中的资源。

![\[此世界地图显示当您在美国东部（弗吉尼亚州北部）区域中添加了偏差值 -25 时，如何路由流量。\]](http://docs.amazonaws.cn/Route53/latest/DeveloperGuide/images/traffic-flow-geoproximity-map-example-bias-minus-25.png)


------

更改资源的偏移会造成的影响取决于多种因素，包括：
+ 您具有的资源的数量。
+ 资源彼此之间的距离。
+ 您在地理区域之间的边界区域附近拥有的用户数。例如，假设您在 Amazon Web Services 区域 美国东部（弗吉尼亚北部）和美国西部（俄勒冈）拥有资源，并且在美国德克萨斯州的达拉斯、奥斯汀和圣安东尼奥市有大量用户。这些城市之间的资源距离大致相等，因此偏见的微小变化可能会导致流量从一个资源 Amazon Web Services 区域 向另一个资源的大幅波动。

我们建议您以较小的增量来更改偏差，以防止由于流量的意外摆动而导致您的资源被耗尽。

有关更多信息，请参阅 [亚马逊 Route 53 EDNS0 如何用来估算用户的位置](routing-policy-edns0.md)。

## Amazon Route 53 如何使用偏差来路由流量
<a name="routing-policy-geoproximity-bias"></a>

以下是 Amazon Route 53 用于确定如何路由流量的公式：

**偏差**  
`Biased distance = actual distance * [1 - (bias/100)]`

当偏差值为正值时，Route 53 会将 DNS 查询的源和您在地理位置邻近记录中指定的资源（例如中的 EC2 实例 Amazon Web Services 区域）视为它们比实际距离更近。例如，假设您具有以下地理位置临近度记录：
+ Web 服务器 A 的记录，它具有正偏差 50
+ Web 服务器 B 的记录，它没有偏差

当某个地理位置临近度记录具有正偏差 50 时，Route 53 会将查询的源与该记录的资源之间的距离减半。之后，Route 53 将计算哪一资源更接近查询的源。假设 Web 服务器 A 与查询的源相距 150 千米，而 Web 服务器 B 与查询的源相距 100 千米。如果这两个记录都没有偏差，Route 53 会将查询路由到 Web 服务器 B，因为它更近。但是，由于 Web 服务器 A 的记录具有正偏差 50，Route 53 将认为 Web 服务器 A 与查询的源相距 75 千米。因此，Route 53 会将查询路由到 Web 服务器 A。

下面是针对正偏差 50 的计算：

```
Bias = 50
Biased distance = actual distance * [1 - (bias/100)]

Biased distance = 150 kilometers * [1 - (50/100)]
Biased distance = 150 kilometers * (1 - .50)
Biased distance = 150 kilometers * (.50)
Biased distance = 75 kilometers
```