Tôi đã nhận được nhiệm vụ Celery xảy ra ok, bằng cách sử dụng các thiết lập mặc định trong hướng dẫn và rabbitmq đang chạy trên ubuntu. Tất cả là tốt khi tôi lên lịch một nhiệm vụ không chậm trễ, nhưng khi tôi đưa cho họ một eta, họ sẽ lên kế hoạch trong tương lai như thể đồng hồ của tôi đang ở đâu đó.Nhiệm vụ cần tây eta tắt, sử dụng rabbitmq
Dưới đây là một số mã python được yêu cầu nhiệm vụ:
for index, to_address in enumerate(email_addresses):
# schedule one email every two seconds
delay = index * 2
log.info("MessageUsersFormView.process_action() scheduling task,"
"email to %s, countdown = %i" % (to_address, delay))
tasks.send_email.apply_async(args=[to_address, subject, body],
countdown = delay)
Vì vậy, một trong những đầu tiên nên đi ra ngoài ngay lập tức, và sau đó mỗi hai giây. Nhìn vào giao diện điều khiển cần tây của tôi, là người đầu tiên xảy ra ngay lập tức, và sau đó những người khác đang dự kiến hai giây ngoài, nhưng bắt đầu từ ngày mai:
[2012-03-09 17:32:40,988: INFO/MainProcess] Got task from broker: stabil.tasks.send_email[24fafc0b-071b-490b-a808-29d47bbee435]
[2012-03-09 17:32:40,989: INFO/MainProcess] Got task from broker: stabil.tasks.send_email[3eb6c3ea-2c84-4368-babe-8a2ac0093836] eta:[2012-03-10 01:32:42.971072-08:00]
[2012-03-09 17:32:40,991: INFO/MainProcess] Got task from broker: stabil.tasks.send_email[a53110d6-b704-4d9c-904a-8d74b99a33af] eta:[2012-03-10 01:32:44.971779-08:00]
[2012-03-09 17:32:40,992: INFO/MainProcess] Got task from broker: stabil.tasks.send_email[2363329b-47e7-4edd-b38e-b09fed232003] eta:[2012-03-10 01:32:46.972422-08:00]
Tôi hoàn toàn mới cho cả hai cần tây và RabbitMQ vì vậy bất kỳ lời khuyên về cách để sửa chữa điều này hoặc nơi để tìm kiếm nguyên nhân sẽ là tuyệt vời. Đây là trên một máy ảo VMWare của Ubuntu, nhưng tôi đã đặt đồng hồ chính xác. Cảm ơn!
Cảm ơn bạn đã phản hồi, nhưng nếu đúng như vậy, tôi sẽ nghĩ rằng nhiệm vụ sẽ được thực hiện. Nhiệm vụ đầu tiên của Te (đếm ngược = 0) thực thi, nhưng không có công việc nào khác thực hiện, nơi chúng sẽ được thực hiện 2 giây sau mỗi lần khác. –