问题标签 [task-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.
python - 谷歌应用引擎任务队列示例
目前,我尝试使用任务队列。但我没有看到任何关于这个问题的完整样本。
所以请给我一些用python编写的谷歌应用引擎中的任务队列示例。
web-applications - Web 应用程序架构 - 需要作业/任务队列?
我目前正在设计一个 Web 应用程序,它允许用户安排将针对 HTTP API(代表他们)执行的任务。任务可以重复出现,可用于调度的最小时间分辨率为一分钟。由于任务的性质,我认为异步执行它们是有意义的。但是,这部分的架构应该是怎样的呢?
我考虑过使用任务队列通过 Web 应用程序创建任务并让它们由工作人员执行。在这种情况下,我有几个问题:
- 如何处理重复性任务?
- 如何轻松保存任务结果?
- 是否可以轻松地使队列“持久化”?
- 工人应该直接与数据库交互吗?
- 我应该手动排队重复任务吗?
我还能考虑什么?由于我认为我不是唯一一个考虑这种 Web 应用程序架构的人,是否有任何“最佳实践”?任务队列是要走的路吗?
objective-c - 可可的实时异步任务
我正在制作一个肥皂客户端,我需要做一些基于时间和优先级的操作..例如..我需要每 200 毫秒处理一次呼叫 x,每 2 秒处理一次呼叫 y,以及偶然的呼叫 z,这应该具有最高优先级...但还有另一个问题,我每秒只能拨打 n 次电话,将其他电话排队..
我已经写了所有的肥皂消耗过程,用户界面,但我遇到了调度程序的问题。我试过调度队列,但我找不到对这种实时和有限处理的支持。也许我应该写一个多线程环境呢?
django - 正确保护 GAE 任务队列 URL(不使用 app.yaml)
我想保护我的任务队列 URL 免受恶意访问。
在任务队列请求的视图中,我得到了:
但我的任务队列收到 403 错误!我从这个 GAE 文档中得到的印象是,任务队列用户被保证为管理员。是什么赋予了?
注意:我使用的是 DjangoNonRel,所以我不能在我的 中指定仅限管理员的 url 访问app.yaml
,我必须在视图中以编程方式进行。
google-app-engine - 使用任务队列时出错
我有一个谷歌应用引擎。当我将任务添加到任务队列以发送电子邮件时。我有这个错误:
请求失败,因为 URL 需要用户登录。对于在 App Engine 中调用的请求(任务队列等离线请求,或 XMPP 和传入邮件等 webhook),URL 必须要求管理员登录(或无需登录)。
我的命令是
taskqueue.add(url='/mypage/operation/task', params={'key': operation.key()}
请帮我修复它。
谢谢。
c# - 当文件被锁定时排队文件操作以供以后使用
我正在尝试实现基于文件的自动增量标识值(以int
存储在 TXT 文件中的值),并且我正在尝试提出处理并发问题的最佳方法。此身份将用于我的内容的唯一 ID。当保存新内容时,这个文件被打开,值被读取,增加,新内容被保存,增加的值被写回文件(我们是否存储下一个可用的 ID 或最后发布的 ID 并不重要)。在执行此操作时,可能会出现另一个过程并尝试保存新内容。前一个进程打开文件,FileShare.None
因此在第一个进程释放文件之前,其他进程将无法读取该文件。虽然这种情况发生的可能性很小,但它仍然可能发生。
现在,当这种情况发生时,我们有两个选择:
- 等待文件可用 -
我们在这里谈论毫秒,所以我想这不会是一个问题,只要发生一些奇怪的事情并且文件永远不会变得可用,那么这个解决方案会导致无限循环,所以不是一个理想的解决方案
- 实现某种队列并对队列中的文件运行所有操作。我的用户体验要求是,在保存/修改文件时,用户永远不应该被告知异常或出现问题 - 当队列上的操作也失败时,他会通过非常友好的用户界面得到通知。
在撰写本文时,该解决方案应该在 ASP.NET MVC 应用程序中工作(通过 AJAX 同步和异步),但如果可能,它应该使用在 Silverlight 或 Windows 窗体或 WPF 应用程序中也可以工作的概念。
关于这两个选项,您认为哪一个更好,对于第二个选项,有哪些可能的技术来实现这一点?
java - 如何在 AppEngine 上限制 appengine-mapreduce?
http://code.google.com/p/appengine-mapreduce/提到它可以控制执行速度,但我不知道如何。为映射器作业创建任务队列并从那里控制速度是有意义的,但我不知道如何指定要使用的队列。
php - PHP 中的并行处理 - 你是怎么做的?
我目前正在尝试在 php 中实现一个作业队列。然后队列将作为批处理作业处理,并且应该能够并行处理一些作业。
我已经做了一些研究并找到了几种实现它的方法,但我并没有真正意识到它们的优缺点。
例如,通过多次调用脚本来执行并行处理,fsockopen
如下所述:
Easy parallel processing in PHP
我发现的另一种方法是使用这些curl_multi
函数。
curl_multi_exec PHP 文档
但我认为这两种方法会增加在主要在后台运行的队列上创建批处理的开销?
我还阅读了pcntl_fork
这似乎也是一种处理问题的方法。但是,如果您真的不知道自己在做什么(就像我现在一样),那看起来会变得非常混乱。
我也看过Gearman
,但在那里我还需要根据需要动态生成工作线程,而不仅仅是运行一些,然后让 gearman 作业服务器将其发送给空闲工作线程。特别是因为在执行一项作业后线程应该干净地退出,以免最终发生内存泄漏(该问题中的代码可能并不完美)。
Gearman 入门
所以我的问题是,你如何处理 PHP 中的并行处理?你为什么选择你的方法,不同的方法可能有哪些优点/缺点?
python - GAE 中的批量电子邮件限制
我正在开发一个投票应用程序,我需要向每个选民发送一封电子邮件,以告知他或她有关选举的信息。我看到了三种方法可以做到这一点,我很好奇每种方法可以发送的电子邮件数量的大致限制是多少:
在用户请求中,将任务添加到每个任务发送一封电子邮件的任务队列。这里的限制是我可以在 30 秒内排队多少个任务。有没有办法可靠地估计这个?
在用户请求中,将一项任务添加到任务队列,其中该任务将任务添加到第二个任务队列,其中第二个队列中的每个任务发送一封电子邮件。由于这里的限制是 10 分钟,我可以发送 20 倍于方法 1 的电子邮件,这是否合理估计?
使用没有时间限制的后端,这样我就可以根据需要发送尽可能多的电子邮件。
如果方法 1 或 2 可以发送足够数量的电子邮件,我宁愿坚持使用它们以避免使用后端的额外复杂性。如果重要的话,我正在使用 Python API。
redis - “排队”教程和文档?
我正在寻找概述“排队”的文章和参考资料(我可能在这里甚至没有使用正确的术语)。我希望通过 Redis、RabbitMQ、Celery、Kombu 以及我还没有读过的任何其他组件的世界,以及它们如何组合在一起,有一个介绍性风格的指南。
我的问题是我需要排队等待由我的 Django 网站发布的后台任务,并且我阅读的每篇博客和文章都推荐不同的解决方案。