Tôi hiện có dự án Rails 3.0, với Ruby 1.9.2 và Resque.Resque: một công nhân cho mỗi hàng đợi
Ứng dụng của tôi có nhiều lớp công nhân và nhiều hàng đợi, được tạo động (trong thời gian chạy). Ngoài ra, có rất nhiều công nhân bắt đầu được miễn phí để làm việc trên bất kỳ hàng đợi, bởi vì lúc đầu không có bất kỳ hàng đợi hiện có, và họ không thể dự đoán:
$ COUNT=3 QUEUE=* rake resque:workers
Queues một tạo ra dựa trên project
's id:
@queue = "project_#{project.id}".to_sym
Đối với một hàng đợi nhất định, công việc của họ phải xử lý theo thứ tự và cùng một lúc. Vấn đề của tôi là, bằng việc có nhiều công nhân, nhiều công việc được xử lý song song.
Có cách nào để đặt số lượng công nhân tối đa cho mỗi hàng đợi (đến 1) không? Có cách nào để khóa hàng đợi trong khi công việc đang xử lý không?
Cảm ơn!
Trông @lacco tốt, cảm ơn! Vấn đề của bạn thực sự giống như của tôi, vì vậy tôi chắc chắn sẽ xem xét giải pháp của bạn sớm. –