问题标签 [app-engine-flexible]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
884 浏览

google-app-engine - 为什么 Dataflow 在 Datastore 访问中异常失败?

在大多数情况下,我的简单数据流管道成功地将多个种类从一个项目的数据存储复制到另一个。但在某些种类(大约 5%)中,我们总是会遇到这些错误。

Dataflow 重试 4-8 次,延迟约 75 秒,然后管道失败。

我该如何诊断和解决这个问题?

编辑:答案包括:(1)Dataflow 使用的 Datastore 库中存在错误;在他们修复了这个错误之后,您可以看到根本原因和 (2) 将实体放入此库的默认批量大小为 500,这也是最大值,并且超过了 Datastore API 的 10 Mb 限制。

(非常简单的)管道如下所示:

第一个堆栈跟踪

0 投票
1 回答
71 浏览

google-app-engine - 将应用移植到 App Engine 柔性环境后出现数据存储区 RPCFailedError

我正在尝试将 Python 应用从 App Engine 标准环境移植到 App Engine 灵活环境。按照App Engine 文档中的说明,我将 app.yaml 文件更改为使用“python-compat”模式,如下所示:

部署后,任何从应用程序调用数据存储的尝试(使用 NDB api)都会导致以下引用(截断):

知道问题是什么吗?据我所知,App Engine 文档没有提供使用 python-compat 运行时设置 NDB 的特殊说明。

0 投票
1 回答
186 浏览

google-app-engine - Firebase and app engine flexible environment handle multiple instances

We are hosting a platform that uses firebase and app engine in combination. The app engine node JS server listens for changes in firebase locations and does some processing of the data. However, because of scaling we suddenly had 2 instances instead of 1 and ended up with duplicate processing of the data. I have seen some suggestions for manual scaling with one instance, but that is not really scalable right?

Are there alternative solutions using the flexible solution? I have already read a bit about Firebase-queues and https://cloud.google.com/solutions/mobile/mobile-firebase-app-engine-flexible . Does anyone have any experience with these and how do they compare to just using REST for updates that need to be processed by the server?

0 投票
2 回答
1983 浏览

google-app-engine - dispatch.yaml 的语义

我正在查看有关 dispatch.yaml 的各个页面,其中大部分包含类似的信息和示例:

https://cloud.google.com/appengine/docs/flexible/nodejs/how-requests-are-routed#routing_with_a_dispatch_file https://cloud.google.com/appengine/docs/python/config/dispatchref https:// cloud.google.com/appengine/docs/go/config/dispatchref 等。

我碰巧在 GAE 灵活环境中使用 node.js,但我认为每种语言和环境都是一样的。

问题是这些页面并没有真正指定 dispatch.yaml 是如何工作的。尤其:

  1. 规则是否按照给定的顺序应用?我假设第一个匹配规则是使用的,但似乎没有这样说。
  2. 前导 glob(通配符)字符是否仅匹配域名,或者它们是否可以匹配 URL 路径的第一部分?如果规则是*/hello,那会匹配myapp.appspot.com/path/hello吗?根据文档中的一些模糊提示,我猜不是,但不是很清楚。
  3. 如果 dispatch.yaml 中没有规则匹配 URL,是否会被路由到默认服务?我认为它必须这样做,但同样,这些页面没有说。
  4. URL 在发送到服务之前是否会根据规则重写?如果规则是*/path/*并且 URL 是https://myapp.appspot.com/path/hello,服务会将其视为/path/hello还是/hello?我猜是前者。

我现在正在做一些试验和错误,所以我可能很快就能回答我自己的问题。我还通过他们的文档反馈系统将其提交给 Google。

0 投票
1 回答
194 浏览

java - 柔性环境使用什么服务帐户来访问另一个项目中的数据存储区?

在一个项目的灵活环境中运行,我想使用com.google.cloud.datastore.Datastore写入另一个项目。

代码在 Flex 环境中运行在哪个“服务帐户”下?需要什么权限?

代码:

权限错误时的堆栈跟踪。

0 投票
0 回答
207 浏览

google-app-engine - App Engine 柔性环境中的 Django 管理命令

我需要一种在应用引擎灵活环境上运行的默认服务中运行远程命令的方法。我可以看到运行迁移的唯一方法(直接连接到数据库之外)是将实例设置为调试,ssh 进入实例,附加到 docker 容器,然后最后执行管理命令。

有没有更好的办法?

0 投票
2 回答
272 浏览

java - App Engine Flexible 的成熟程度如何?

您是否知道 App Engine Flexible 的 GA(通用可用性)是否有一个或多或少确定的日期?现在在 App Engine Flexible 上推动我们的生产的最坏情况是什么?什么样的失败比其他人更容易发生?

0 投票
1 回答
2322 浏览

google-app-engine - 我可以只更新 app.yaml 文件而不上传所有项目吗

使用 App Engine Flexible env 时,有没有办法更新选定的文件?

每当我对 app.yaml 文件进行小改动时,我都会遇到一个问题:要对其进行测试,我需要部署整个应用程序,这需要大约 5 分钟。

有没有办法只更新配置文件?或者有没有办法在本地测试这些文件。

谢谢!

0 投票
1 回答
2110 浏览

google-app-engine - 如何更改运行 GCP GAE Flex 服务的服务帐户?

我想知道我是否可以将 GAE 灵活“服务”配置为使用特定的服务帐户 ID,而不是所有服务运行的默认服务帐户 ID。

为什么?我想隔离每个服务的权限,但还通过允许它仍然使用调用 Google API 的应用程序默认凭据方法来简化服务代码。

是否有我可以控制的 app.yaml 配置/环境变量?

我在这里没有看到答案https://cloud.google.com/appengine/docs/flexible/java/migratinghttps://cloud.google.com/appengine/docs/flexible/java/authorizing-apps

我还发现了这个https://cloud.google.com/compute/docs/access/create-enable-service-accounts-for-instances#using它告诉我如何在计算引擎级别做我想做的事,但我看不到如何在 GAE Flex 托管级别应用它。

如果这不可能,那么下一个最佳选择是什么?

0 投票
1 回答
384 浏览

google-app-engine - 在 App Engine Flexible 中可以禁用 nginx.health_check 日志记录吗?

App Engine Flexible 创建一个 nginx.health_check 日志。它记录所有健康检查请求,而不仅仅是失败的健康检查。如果您的健康检查间隔小于 10 秒,则日志可以在短短几天内增长到多个演出。有没有办法将其配置为仅记录失败的检查,或完全禁用日志?