Redis - Конфигурация сельдерея через Amazon EC2 - PullRequest
0 голосов
/ 27 февраля 2012

Я занимаюсь разработкой веб-приложения с использованием Python, Django и MySql.У меня есть положение в приложении, где пользователь может загружать файлы * .wmv и * .mov, которые система будет обрабатывать, и конвертировать их в * .mp4.Я использовал архитектуру с одним сервером, но по мере роста пользовательской базы преобразование видео занимает 90% памяти.Я думаю о том, чтобы перенести сервер преобразования / потоковой передачи видео в облако с помощью Amazon EC2, чтобы преобразование происходило на другом сервере с использованием Redis и Celery.Я хотел знать, поддерживает ли Redis - Celery многоуровневую архитектуру.Если кто-нибудь когда-либо успешно достиг этого, пожалуйста, дайте мне знать шаги.Это будет очень полезно, поскольку я гуглю это, но не могу найти подтверждающую документацию.

1 Ответ

5 голосов
/ 27 февраля 2012

Если вы хотите использовать очередь Celery для обработки ваших заданий, вам необходимо:

  • Настроить rabbitMQ.Вы можете сделать это на своем существующем хосте или на экземпляре EC2
  • Настройка Celery. Документы хороши.
  • Настройте Redis для того, что вам нужно.Опять же, документы хороши
  • Сконфигурируйте свой существующий сервер, чтобы иметь возможность общаться с очередью задач и перенаправлять.В основном, настройте правила брандмауэра EC2
  • Убедитесь, что рабочие серверы могут видеть файлы.Загрузить их на S3, возможно, самый простой способ переместить их назад / вперед из облака.
  • Измените код своего веб-сервера, чтобы запустить задачу сельдерея для преобразования
  • .преобразование завершено - как вы дадите пользователю знать, что оно сделано?
  • Go.

Не беспокойтесь о "n-уровневом" и т. д.можно начать через день, следуя документам.

...