问题标签 [rq]
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 - 暂停在 redis-server 上的队列中执行 RQ 作业
嗨,我有一个问题,是否有可能暂停 RQ 工作人员以接受正在排队等待的工作?我发现的唯一方法是杀死它们,但我认为有更好的方法来设置工人的某种状态。
python - Heroku 上的 rq-dashboard
我正在尝试让 rq-dashboard 在通过 Heroku 创建的 Redis 服务器上工作。我将它添加到我的 Flask 应用程序中
但是在访问/rq
我得到的 URL时
关于做什么的任何建议?
flask - 获取已在执行的当前作业 ID(RQ 包)
我正在使用 Flask 在繁重的视频分析代码上构建 UI。我需要添加一个实现来停止后台任务。为此,我需要获取当前正在执行的作业 ID,然后停止它。
我的 init 文件从 - 导入 redis 连接
一切都运行良好,但我现在需要添加一个选项来停止当前正在运行的后台任务。
kubernetes - Flask redis queue (RQ) worker 从 Vault 更新父进程
我正在研究在 k8s 上构建系统并在两个不同的 pod(提供者和服务器)上运行两个独立进程的项目,一个 pod(提供者)负责收集数据,另一个(服务器)与提供者交谈并向客户端检索数据. 对于两个 pod(提供者和服务器),我使用 RQ worker https://python-rq.org/docs/workers/在提供者端排队工作,我存储在 Vault https://www.vaultproject 上的所有配置密钥。 io/docs并且当我在 k8s 上运行一个 pod(提供程序)时,它可以在 Vault 的服务器上获取所有正确的密钥,但是如果我稍后在 Vault 上修改一些配置,提供程序 pod 仍然会读取旧配置,直到我重新启动提供程序 pod .
我认为当运行 RQ worker 时,它将从 Vault 检索所有搜索配置并将其存储在父进程中,因此每个函数都在子进程上运行(https://python-rq.org/docs/workers/),在python中将再次使用父进程的Vault初始化。那么,每次我更改 Vault 上的配置时,如何在不重新启动 pod 的情况下更新父进程上的这些进程。
django - Django RQ asyncio.TimeoutError
我将 django-rq 和 redis 用于队列任务。超时:6000 但我收到超时错误。
当我第一次开始工作时它以某种方式工作,并且这段代码也可以在没有队列的情况下工作
这是我的队列代码:
这是我的错误代码
python - 使用 redis 队列在另一个作业中调度/排队作业
Tasker
类在实例化时设置初始作业。基本上我想要的是在'main_queue'中放置一个作业,决定作业是否正在运行或者是否已经有相同的作业在'process_queue'中排队,从当前的'main_queue'作业返回。否则在“process_queue”中排队作业。当该进程队列完成时,将作业放入“main_queue”。
然而,“process_queue”在这段时间内具有与 id 相同的工作,尽管它应该已经完成了对输出的查看。所以一个新的工作永远不会被投入处理。是否发生了我看不到的僵局?
main_queue 工作者
进程队列工作者
任务者.py
任务.py
flask - RQ 作业的 Flask 上下文(RuntimeError:在应用程序之外工作)
首先,关于flask_context 的问题包括RQ 作业的上下文似乎是常见问题,但我搜索了很多,仍然无法解决我的问题。
我的装饰器功能(在不同的变体中尝试了它们):
在函数under_decorator_func
中使用flask.current_app
。
问题:
我也在创建应用程序后立即尝试过app.app_context().push()
,所以我不知道这里发生了什么。
python - 如何在具有 Redis 排队作业的 Flask 应用程序中使用 PostgreSQL 和 SQLAlchemy
当直接在 Flask 应用程序中的 API 调用上使用 SQLAlchemy 执行 SQL 查询时,它们会成功执行,但是当我尝试在我的函数中执行一个使用 Redis 作业队列执行的函数时,我收到以下错误:RuntimeError: No application found. Either work inside a view function or push an application context.
函数存储在单独的文件中,而不是app.py
.
我的app.py
:
在我models.py
的 setup_db 中看起来像这样:
然后在我调用作业时触发的函数中:
其中 User 是我在models.py
.
flask - 这不适用于带有 SqlAlchemy 数据库表的 Flask Rq 队列
我有一个 Flask 项目。过程工作正常。数据库是 PostgreSql。一切都在这个数据库上工作。但是当我可以使用 Python Rq 时,我无法使用 SqlAlchemy 访问表。我的项目在heroku上。我怎么解决这个问题。
注意:(队列操作正常工作,除了数据库)
初始化.py
工人.py
主文件
bash (heroku logs --tail) 代码 错误结果
python - TypeError: cannot pickle '_thread.lock' object with RQ (Redis Queue) [python 3.9 & 3.8 & 3.7]
我一直在尝试使用 rq 对来自 BigQuery 的 API 请求进行排队,因为它们需要很长时间,我得到了 H12(超时)错误。当将数据帧传递给下一个队列时,代码会不断崩溃。
这是我的worker.py
文件:
这是错误的来源:
第一个函数所做的只是调用 api 将数据下载到 data_full 数据帧,然后将其传递给另一个函数以创建用于可视化目的的数组。
完整的错误报告:
我已经用 python 版本 3.7.11 & 3.8.10 & 3.9.6 试过了,都得到了同样的错误
唯一提到类似问题的解决方案是在这个线程中,但降级到 3.7 的解决方案对我不起作用。