1 00:00:00,210 --> 00:00:02,950 我们必须了解的另一个重量级话题就是 2 00:00:02,950 --> 00:00:05,670 边缘缓存 为了描述该缓存 3 00:00:05,670 --> 00:00:09,150 我们来看一看 App Engine 应用的信息流 首先 4 00:00:09,150 --> 00:00:11,760 将想要使用你应用的用户 5 00:00:11,760 --> 00:00:15,670 连接到其互联网服务供应商 再将此提供商 6 00:00:15,670 --> 00:00:18,576 连接到 Google 数据中心 通过 DNS 查找 7 00:00:18,576 --> 00:00:22,036 确定 Google 已托管了你的应用 8 00:00:22,036 --> 00:00:25,693 随后 Google 会识别运行你的 App Engine 应用的 9 00:00:25,693 --> 00:00:28,304 数据中心 并且开始与 App Engine 前端 10 00:00:28,304 --> 00:00:30,939 进行对话 如果内容是动态的 则 App Engine 前端 11 00:00:30,939 --> 00:00:34,350 确定应该管理请求的实例 12 00:00:34,350 --> 00:00:37,560 因此 这些是运行你的应用代码 13 00:00:37,560 --> 00:00:40,890 的 App Engine 实例 但是 如果请求静态内容 14 00:00:40,890 --> 00:00:44,880 例如 图像或静态 HTML 15 00:00:44,880 --> 00:00:48,370 则前端可以从静态服务器中直接检索 在 16 00:00:48,370 --> 00:00:51,960 这两种情况下 将响应返回到用户 17 00:00:51,960 --> 00:00:54,350 所以说 这是一个很棒的架构 但是现在看起来 18 00:00:54,350 --> 00:00:57,000 必须将所有请求发送到 19 00:00:57,000 --> 00:01:00,230 托管你的 App Engine 应用的数据中心 如果 20 00:01:00,230 --> 00:01:02,850 此数据中心可以直接提供更多的内容 21 00:01:02,850 --> 00:01:06,160 也是不错的 首先 22 00:01:06,160 --> 00:01:09,640 这会缓解数据中心的负载 更重要的是 23 00:01:09,640 --> 00:01:12,340 因为它离用户更近 所以响应的交付速度 24 00:01:12,340 --> 00:01:16,150 会更快 这就是边缘缓存 25 00:01:17,210 --> 00:01:19,620 边缘缓存是离用户更近的 26 00:01:19,620 --> 00:01:22,840 数据中心中的缓存 所以 发出请求之后 27 00:01:22,840 --> 00:01:25,290 如果缓存中的结果可用 28 00:01:25,290 --> 00:01:27,990 那么会直接从该缓存返回结果 29 00:01:27,990 --> 00:01:31,220 而不是从数据中心 2 中返回 这意味着 应用中数据中心 2 的 30 00:01:31,220 --> 00:01:34,700 负载变小了 向用户交付响应的速度 31 00:01:34,700 --> 00:01:38,650 更快了 这是双赢的结果 所以 我们要问 32 00:01:38,650 --> 00:01:41,070 使用边缘缓存时你需要考虑什么? 33 00:01:42,230 --> 00:01:45,100 这有两个方法 第一个方法是 34 00:01:45,100 --> 00:01:49,070 在 HTTP 响应中设置缓存控制标题 只有当 35 00:01:49,070 --> 00:01:51,490 此种类的后续请求返回相同的结果时 36 00:01:51,490 --> 00:01:54,730 才可以这么做 第二种方法是 37 00:01:54,730 --> 00:01:58,010 尽可能将更多的内容定义为静态内容 38 00:01:58,010 --> 00:02:00,900 因为静态内容不需要更改 这对于边缘缓存来说 39 00:02:00,900 --> 00:02:04,892 是最合适的 你可以通过配置文件定义 40 00:02:04,892 --> 00:02:07,356 静态内容 这是让你阅读在线文档的 41 00:02:07,356 --> 00:02:11,190 好机会 请记住 执行缓存时 42 00:02:11,190 --> 00:02:14,180 大多数时候不会保证缓存内容 43 00:02:14,180 --> 00:02:16,340 但是如果缓存了内容 44 00:02:16,340 --> 00:02:19,300 这对你的应用和你的用户来说都是好事