2011-06-28 35 views
7

Tôi có một trao đổi RabbitMQ đơn với một hàng đợi đơn. Tôi muốn tạo một daemon chạy nhiều luồng và làm việc thông qua hàng đợi này càng nhanh càng tốt.Tiêu thụ hàng đợi tin nhắn thỏmq với nhiều chủ đề (Python Kombu)

"Công việc" liên quan đến việc liên lạc với các dịch vụ bên ngoài, do đó sẽ có một số lượng hợp lý các hoạt động chặn trong mỗi người tiêu dùng. Như vậy, tôi muốn có nhiều luồng xử lý tất cả các thư từ cùng một hàng đợi.

Tôi có thể đạt được điều này bằng cách tiêu thụ hàng đợi trên chuỗi chính của mình, sau đó canh tác công việc đến với một nhóm các chủ đề khác, nhưng có cách nào để khởi chạy nhiều người tiêu dùng, mỗi người trong ngữ cảnh luồng của riêng họ không?

Trả lời

3

Hãy xem celery - nó được thiết kế để xếp hàng và xử lý tác vụ từ nhà môi giới AMPQ (nhưng cũng hoạt động với các chương trình phụ trợ xếp hàng khác). Nó xử lý đa xử lý hoặc đa luồng đồng thời và làm cho nó rất dễ dàng để tạo ra và tiêu thụ nhiệm vụ.

+0

Điều này chỉ giới hạn ở trăn, điều này có thể không lý tưởng vì thỏmq là ngôn ngữ độc lập. Có một ngôn ngữ độc lập dễ dàng thực hiện gói phân phối nhiệm vụ không? – liang

Các vấn đề liên quan