我在我的计算机上本地运行标准的对接-撰写文件,所有的默认设置来自气流:2.1.4,postgres:13,redis:最新。当我有调度程序的一个实例时,一切都按预期的方式工作,但是当我添加调度程序的另一个实例时,我开始得到锁定问题。
postgres_1 | STATEMENT: SELECT slot_pool.pool AS slot_pool_pool, slot_pool.slots AS slot_pool_slots FROM slot_pool FOR UPDATE NOWAIT
我的相关停靠-撰写文件是
&airflow-common
environment:
我发现django-q没有按时执行我计划的任务。可能会有几秒钟到几乎一分钟的延迟。
我这样安排一个任务:
from django.utils import timezone
from django_q.models import Schedule
def schedule_auction_deadlines(self):
now = timezone.now()
if self.deadline:
name = "end_phase_%d" % self.id
Schedule.objects.filter(name=name)
在Redis Pub/Sub中是否有确认的概念?
例如,在使用RabbitMQ时,我可以让两个工作人员在不同的机器上运行,当我将消息发布到队列时,只有一个工作人员会对它进行编码/nack并处理该消息。
然而,我发现了Redis Pub/Sub,两个工作人员都会处理这个消息。
考虑这个简单的例子,我在两台不同的机器/客户端上运行了这个go例程:
go func() {
for {
switch n := pubSubClient.Receive().(type) {
case redis.Message:
process(n.Dat