2011-06-23 31 views
7

Tương tự như câu hỏi của tôi here Tôi đang cố thiết lập nhiều phiên bản EC2 amazon để thực hiện một số phép xử lý đa. Tôi đã nghĩ đến việc sử dụng Celery để quản lý công nhân. Có ai nhận được cần tây để làm việc trên EC2 trường hợp với một máy tính địa phương như là một máy chủ?Thiết lập các trường hợp EC2 là Công nhân cần làm việc với máy tính cục bộ làm máy chủ

Có ai có bất kỳ đề xuất hay, hướng dẫn, lời khuyên, v.v. nào có thể hữu ích không? Tôi đã sử dụng cần tây để làm một số quá trình không đồng bộ đơn giản trong django nhưng không có gì của quy mô này (công nhân và máy chủ được trên cùng một máy).

Ngoài ra hầu hết quá trình xử lý là 'dựa trên tệp' (nghĩa là đọc và ghi tệp) ... bạn có nghĩ sẽ tốt hơn khi chọn và truyền nội dung của tệp bằng cần tây (hầu hết các tệp là 1-2kb) của văn bản) hoặc để phản chiếu hệ thống tệp trên các phiên bản EC2 và sau đó chỉ cần nhân viên trả về kết quả (thường là 0,5 kb văn bản).

+1

Tôi đã hỏi [cùng một câu hỏi] (https://groups.google.com/forum/?fromgroups=#!topic/celery-users/EnJGOK7kf_Y) trong danh sách gửi thư của người dùng Celery và tôi vẫn đang chờ Cho một câu trả lời. Bạn có thể bình luận về cách cuối cùng bạn quyết định làm điều đó? –

+1

@ andres.riancho Chỉ cần tạo bản sao của cá thể ứng dụng của bạn, làm cho tất cả các bản sao lắng nghe trong môi giới thư của bạn. Bạn có thể vô hiệu hóa cần tây trên máy ứng dụng và chạy cần tây trên tất cả các bản sao khác. Bằng cách này, cá thể ứng dụng của bạn sẽ đặt nó vào hàng đợi và các bản sao sẽ tiêu thụ các tác vụ – noahandthewhale

Trả lời

1

Tôi đã sử dụng SQS của Amazon để quản lý tác vụ với Amazon EC2. Đó là giải pháp có khả năng mở rộng. Boto là thư viện tốt nhất để quản lý các dịch vụ Amazon như tôi đã tìm thấy.

Để lưu trữ số lượng lớn các tệp nhỏ bạn có thể sử dụng MongoDB GridFS, nó sẽ cho phép bạn lưu trữ biểu diễn của các tệp cục bộ. Tôi đã sử dụng MongoDB và có hiệu suất hoàn hảo cho những nhiệm vụ như vậy. Vấn đề duy nhất - MongoDB trên kiến ​​trúc 32 bit rất hạn chế. Amazon có vi dụ và tiếp theo là cá thể có chi phí lớn hỗ trợ 64. Vi dụ rất hạn chế bởi CPU và bộ nhớ và nếu nó không phù hợp với bạn cần bạn cần phải thiết lập lớn, có thể tốn rất nhiều.

Ví dụ nhỏ về nhiệm vụ của tôi có thể đọc/ghi tối đa 10 hợp đồng biểu diễn mỗi ngày mà không gặp bất kỳ sự cố nào.

Ngoài ra, hãy xem các trường hợp Điểm. Nó có giá khoảng 3 lần ít hơn theo yêu cầu và bạn có thể thấy chúng khá tốt để xử lý nền.

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