Aro*_*ron 5 database-replication google-cloud-datastore
我们有一个在美国和欧盟托管的应用程序。为了获得出色的性能,我们将在两个位置托管一个数据存储实例。
现在我们的问题是如何将数据从美国数据存储复制到欧盟数据存储?
或者从技术角度来看,我们将数据存储在哪里并不重要?
目前还没有多位置 GAE 应用程序(至少现在还没有)。应用程序的唯一位置可以在创建应用程序时选择,并且无法更改。请参阅App Engine - 如何在美国中部地区创建项目和gae 应用程序移至欧盟数据中心或重新开放
\n\n创建项目和应用程序的重要说明:
\n\n\n\n\n重要提示:每个 Cloud Platform 项目只能包含一个 App Engine 应用程序,并且在创建 App Engine 应用程序后\n 无法更改区域。
\n
现在,数据存储本身只能存在于单个云项目中,该项目也 1:1 映射到一个位置。来自Google Cloud 数据存储位置:
\n\n\n\n\n创建 Google Cloud Platform 项目时,您必须选择\n 存储项目数据的位置。为了减少延迟并提高可用性,请将数据存储在靠近需要数据的用户和服务的地方。您可以在以下位置创建项目:
\n\n\n
\n- \n
europe-west\xe2\x80\x94 西欧- \n
us-central\xe2\x80\x94 美国中部- \n
us-east1\xe2\x80\x94 美国东部- \n
asia-northeast1\xe2\x80\x94 东北亚太地区
App Engine 和 Cloud Datastore 均被列为具有多区域覆盖范围的产品(请参阅https://cloud.google.com/about/locations/)。但这种覆盖范围并不是全球性的,它仍然包含在一个区域组内。而且美国和欧盟位于不同的地区组,因此这对您没有帮助。来自多区域资源:
\n\n\n\n\n与多区域资源关联的数据不绑定到特定区域,并且可以在区域之间移动,并且可以在区域组中添加和删除区域。例如,Google Cloud Storage 位于欧盟位置的存储桶将静态数据保存在欧盟内部,但静态数据可以存储在或移动到欧盟内的任何 Cloud Storage 区域(须遵守 服务条款和服务特定条款)。
\n
因此,您最多可以在 2 个不同的区域部署 2 个不同的GAE 应用程序,最终使用(几乎)相同的代码。
\n\n您需要自己负责在这些应用程序之间复制数据,例如为此目的在应用程序之间添加自定义/专用通信或使用远程 API (每个应用程序充当其他应用程序远程 API 的客户端) )。
\n\n很可能不是微不足道的,特别是在数据一致性很重要的情况下。在这种情况下,您可能会更好地使用单个应用程序,并根据某些客户的位置对他们进行一些性能损失。
\n| 归档时间: |
|
| 查看次数: |
4629 次 |
| 最近记录: |