Tôi đã cố gắng để thiết lập Amazon SQS cho cần tây và tôi có cấu hình dưới đây:SQS với cấu hình cần tây
BROKER_BACKEND = "SQS"
BROKER_TRANSPORT_OPTIONS = {
'region': 'us-east-1',
}
AWS_ACCESS_KEY_ID = # access id
AWS_SECRET_ACCESS_KEY = # secret access key
os.environ.setdefault("AWS_ACCESS_KEY_ID", AWS_ACCESS_KEY_ID)
os.environ.setdefault("AWS_SECRET_ACCESS_KEY", AWS_SECRET_ACCESS_KEY)
BROKER_URL = 'sqs://'
CELERY_IMPORTS = ("tasks",)
CELERY_TASK_RESULT_EXPIRES = 300
CELERY_DEFAULT_QUEUE = #queue name
CELERY_DEFAULT_EXCHANGE = CELERY_DEFAULT_QUEUE
CELERY_DEFAULT_EXCHANGE_TYPE = CELERY_DEFAULT_QUEUE
CELERY_DEFAULT_ROUTING_KEY = CELERY_DEFAULT_QUEUE
CELERY_QUEUES = {
CELERY_DEFAULT_QUEUE: {
'exchange': CELERY_DEFAULT_QUEUE,
'binding_key': CELERY_DEFAULT_QUEUE,
}
}
Trong cấu hình SQS của tôi trên tài khoản AWS, tôi có một hàng đợi với tên viết bằng CELERY_DEFAULT_QUEUE
. Khi tôi chạy nó cục bộ, mọi thứ hoạt động ... nhưng vì một số lý do nó tạo ra một hàng đợi khác trên SQS với định dạng tên <user_id>-celery-pidbox
. Một cái gì đó như thế này: MyUser-MacBook-Pro-local-celery-pidbox
.
Điều này có bình thường không? Tại sao nó sẽ tạo một hàng đợi khác khi tôi có hàng đợi được tạo với tên được chỉ định? Nếu không, làm việc của nó, không chắc chắn nếu hàng đợi khác là cần thiết hoặc tôi bị mất một cái gì đó? Bất kỳ trợ giúp được đánh giá cao, tôi không thể tìm thấy điều này trong tài liệu.
EDIT
Hóa ra đây là điều bình thường. Đối với một số lý do django-cần tây làm điều này, nó tạo ra một hàng đợi cho mỗi hộp mà bạn đã truy cập vào hàng đợi bạn muốn truy cập. Họ sẽ sửa lỗi này trong bản phát hành trong tương lai. Nếu ai đó biết cách sửa lỗi tạm thời này, vui lòng cho tôi biết, cảm ơn!
bạn có bất kỳ cập nhật nào về cách giải quyết vấn đề này không? – silviomoreto