Настройка экземпляров EC2 в качестве Celery Workers с локальным компьютером в качестве хоста - PullRequest
7 голосов
/ 23 июня 2011

Похоже на мой вопрос здесь Я пытаюсь настроить несколько экземпляров amazon EC2 для выполнения многопроцессорной обработки. Я думал об использовании сельдерея для управления рабочими. Кто-нибудь получил сельдерея для работы на экземплярах EC2 с локальным компьютером в качестве хоста?

Есть ли у кого-нибудь хорошие предложения, учебные пособия, советы и т. Д., Которые могут помочь? Я использовал celery для выполнения простых асинхронных процессов в django, но ничего такого масштаба (рабочий и хосты были на одной машине).

Кроме того, большая часть обработки выполняется на основе файлов (т. Е. Чтение и запись файлов) ... как вы думаете, было бы лучше выбирать и передавать содержимое файла с помощью сельдерея (большинство файлов составляют 1-2 КБ текст) или для зеркального отображения файловой системы между экземплярами EC2, а затем просто попросите рабочих вернуть результаты (которые обычно составляют 0,5 КБ текста).

1 Ответ

1 голос
/ 18 августа 2011

Я использовал Amazon SQS для управления задачами с помощью Amazon EC2.Это очень масштабируемое решение.На мой взгляд, Boto - лучшая библиотека для управления сервисами Amazon.

Для хранения большого количества маленьких файлов вы можете использовать MongoDB GridFS, она позволит вам хранить концерты локальных файлов.Я использовал MongoDB и получил префект производительности для таких задач.Единственная проблема - MongoDB на 32-битной архитектуре очень ограничена.У Amazon есть микроэкземпляр и следующий по стоимости большой экземпляр, который поддерживает 64. Микроэкземпляр очень ограничен по процессору и памяти, и если он вам не подходит, вам нужно настроить большой экземпляр, который может стоить дорого.

Микро экземпляр на моих задачах смог читать / писать до 10 концертов в день без проблем.

Также, пожалуйста, посмотрите на экземпляры Spot.Это примерно в 3 раза дешевле, чем по требованию, и вы можете найти их довольно хорошими для фоновой обработки.

...