java - 如何连接到本地谷歌云数据存储数据库?

标签 java google-app-engine google-cloud-storage google-compute-engine google-cloud-datastore

我有一个 GAE 应用程序,它在 Google Cloud Datastore 中创建一些数据并将一些二进制文件存储到 Google Cloud Storage 中 - 让我们将该应用程序称为 WebApp。 现在我有一个不同的应用程序在 Google 计算引擎上运行。我们将该应用程序命名为 ComputeApp

ComputeApp 是一个后端进程,用于处理WebApp 创建的数据。我在这里问in this question之前我可以使用哪个 API 从 ComputeApp 与数据存储进行通信。根据@proppy的建议,我使用Google Cloud Datastore API实现了数据存储通信。 。

就我与 Google 云中的数据存储区的通信而言,一切正常。我正在使用服务帐户身份验证。

现在,我需要在我的开发 PC 上本地运行我的 ComputeApp,以便我将获取本地 WebApp 创建的数据并将其存储到本地调试数据存储中。我需要它,因为我想要一个测试环境,以便我可以在本地调试可能的 GAE 应用程序。

我应该如何修改我的 ComputeApp 代码以强制它连接到我的本地调试数据存储区而不是连接到 Google 云?

我用谷歌搜索了很多,没有找到任何建议或例子。我发现唯一可能的方法是完全重写我的代码并使用不同的 API 来做到这一点。这就是数据存储远程 API。 这真的是唯一的方法吗?我真的应该重写整个 ComputeApp 以连接到本地数据库吗? 真的吗?

我希望我只是忽略了一些重要的事情,但事实并非如此......

最佳答案

Google Cloud Datastore 有一个可供您使用的本地开发服务器:https://developers.google.com/datastore/docs/tools/devserver

您可以使用上面文档中链接的 gcd 工具创建并启动本地数据存储。

如果您使用DatastoreHelper.getDatastoreFromEnv();要构建数据存储区,您可以通过导出环境变量DATASTORE_HOST来告诉它连接到本地数据库。 :

export DATASTORE_HOST=http://localhost:8080

关于java - 如何连接到本地谷歌云数据存储数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21703006/

相关文章:

java,固定最大宽度的多行工具提示,使用html标签

java - Spark 失败,出现 java.lang.OutOfMemoryError : GC overhead limit exceeded?

java - 处理错误输入

python - Google App Engine - 将 key 存储到ndb KeyProperty中

unit-testing - 具有 Google Cloud API 依赖项的单元测试代码

Java 的根源和力量

java - 线程 "main"java.lang.OutOfMemoryError : GC overhead limit exceeded in GWT application 中的异常

google-app-engine - 谷歌云节点安装第三方库 Node.js

google-cloud-platform - 关于签名 URL 和对象上传的说明

google-cloud-storage - 如何使用 gsutil 命令在 google storage(bucket) 中创建一个空文件夹?