问题标签 [pull-queue]

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 投票
1 回答
116 浏览

python - Google TaskQueue (pull) 通过 API 插入任务

我正在使用 apiclient.discovery.build 从 Google 拉取队列中租用任务。它工作正常。但是当我尝试在这个队列中插入任务时,我总是得到同样的错误:

引发 HttpError(resp, content, uri=self.uri) googleapiclient.errors.HttpError: https://www.googleapis.com/taskqueue/v1beta2/projects/project_test/taskqueues/pullqq/tasks?alt=json 返回“后端错误">

身份验证是正确的,因为我可以租用/删除任务。它可能是有效负载中缺少的字段?

0 投票
1 回答
140 浏览

python - Google AppEngine - 拉取队列 - 无法删除任务:“项目名称无效”

我在 GAE 中创建了一个可以正常工作的拉取队列,我可以从应用程序中添加元素并使用以下代码从我的实例中检索它们:

当我在处理后尝试删除任务时出现问题,这段代码应该可以工作

返回

我不明白出了什么问题,因为我能够从队列中获取任务,但是当我想删除它时,会引发此错误。

有没有人有见识?

0 投票
1 回答
256 浏览

google-app-engine - Google App Engine Flex Python 3.4 - 文档和代码示例不支持 *Pull Queues*

使用 Python 3.4 Google App Engine Flex。

关于使用 Python 使用拉取队列的Google文档from google.appengine.api import taskqueue说“ ”,但没有解释如何使任务队列可用于 Python 运行时。

他们确实链接到“从 Python 轻松访问 Google API”,其中解释了如何通过“ pip install google-api-python-client”安装 api 客户端

这不会安装任务队列库。

在上一个文档中,有一个指向“安装”的链接,其中显示:

由于 Python 客户端库未安装在 App Engine Python 运行时环境中,因此它们必须像第三方库一样供应到您的应用程序中。

链接到另一个页面“使用第三方库”,该页面指出您需要将 lib 安装到 /lib 或使用 requirements.txt。这些都不能使 taskueue 可用。

在 Google 的 github 中搜索 taskqueue.py 只显示了一个同名的示例模块。

该模块上有一个文档页面,但没有关于如何安装它的信息。

谷歌在此处指出了一个 Python 2.7 示例,但它不起作用。没有任务队列的设置,没有requirements.txt,没有说明。

这里有一个关于这个主题的堆栈溢出问题,选中的答案是安装 SDK。这会带你到这里,它会带你到这里,它会带你到这里,它会带你到这里,它提供了用于部署和管理 gcloud 的 gcloud SDK 下载。这不包括任务队列的 python 库。

这里还有另一个类似的 stackoverflow 问题,上面写着: 在此处输入图像描述 ......现在开始感觉像是一个无限循环。是的,已经很清楚您需要导入任务队列。但是你如何使它可用?

我已经向 Google 支持人员提出了这个问题,他们已经 4 天没能回答了。

我已经打开了两个问题,一个在这里,另一个在这里。还没有答案。

不想使用 Python < 3.4。

不想使用 HTTP REST API。

只想要一个简单的拉队列。

0 投票
1 回答
66 浏览

google-app-engine - App Engine - 拉队列 max_concurrent_requests 限制?

我正在使用 Google App Engine 拉队列向 APNS、GCM 和 OneSignal 发送大量推送通知,主要遵循以下架构:https ://cloudplatform.googleblog.com/2013/07/google-app-engine-takes-pain-out -of-sending-ios-push-notifications.html

在此处输入图像描述

问题是我在同时租用多少个任务方面遇到了某种限制:我的 Notification Workers 一次租用 3 个通知,但是当有超过 30 个工作人员在运行时,leaseTasks()返回一个空数组,甚至当有数百或数千个待处理任务时。据我所知,同时租用多少个任务是没有限制的,所以这种行为是出乎意料的。

0 投票
1 回答
127 浏览

java - 从 Google App Engine 中的拉取队列中租用任务

拉队列是否保证在任何给定时间点将一项任务租给不超过一个工作人员?

未能找到任何明确提及此...

0 投票
1 回答
187 浏览

node.js - 如何在 Node.js 中使用 Cloud Tasks 实现拉取队列

我正在尝试在 Node.js 中使用 Cloud Tasks + App Engine 标准环境来实现拉式队列。所以基本上我正在尝试从队列中租用任务。问题是我只能找到其他语言的示例,并且在 GCP Node.js 文档中找不到为拉取队列创建或租赁任务的内容。

请告诉我这是可能的,我不需要在我的项目中开始使用不同的语言来实现拉队列机制。

这是等效 Python 文档的链接

- - 编辑 - -

我设法在允许我这样做的类型中找到参考:

...但它给了我一些奇怪的配额错误:

错误:无法从 my-pull-queue 队列中租用任务:8 RESOURCE_EXHAUSTED:配额指标“Alpha API 请求”超出配额并限制服务“cloudtasks.googleapis”的“每分钟 Alpha API 请求(除非列入白名单,否则应为 0)” .com' 用于消费者 'project_number:xxx'。

我几乎找不到引用此类配额错误的来源,但它似乎源于尚未公开的 API,并且只能在明确授予访问权限时使用(这将解释白名单)。

我觉得很奇怪的另一件事是似乎有两个 beta 客户端 v2beta2 和 v2beta3,但只有 beta2 类型定义了租用任务的方法。两个测试版 API 都在定义用于创建拉入队列任务的类型。