Фоновые задания на веб-сервисах Amazon - PullRequest
1 голос
/ 02 августа 2011

Я новичок в AWS, поэтому мне нужен был совет, как правильно создавать фоновые задания.У меня есть данные (около 30 ГБ), которые мне нужно:

a) загрузить с другого сервера;это набор zip-архивов со ссылками в RSS-канале

b) распаковка в S3

c) обработка каждого файла или группы распакованных файлов, преобразование данных и их сохранениев SimpleDB / S3

г) повторять вечно в зависимости от обновлений RSS

Может кто-нибудь предложить базовую архитектуру для правильного решения на AWS?

Спасибо.

Denis

Ответы [ 4 ]

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

Я думаю, что вы должны запустить экземпляр EC2 для выполнения всех необходимых вам задач и завершить его, когда закончите.Таким образом, вы будете платить только за время работы EC2.Однако, в зависимости от вашей архитектуры, вам может потребоваться запускать ее постоянно, однако небольшие экземпляры очень дешевы.

0 голосов
/ 17 июля 2016

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

0 голосов
/ 01 октября 2013

Прежде всего, напишите некоторый код, который выполняет от a) до c). Проверьте это и т. Д.

Если вы хотите периодически запускать код, это хороший кандидат для использования фонового рабочего процесса. Добавить работу в очередь; когда он будет считаться завершенным, удалите его из очереди. Приблизительно каждый час добавляйте в очередь новое задание, означающее «иди за обновлениями RSS и распакуй их».

Вы можете сделать это вручную, используя Сервис простой очереди AWS или любую другую службу / библиотеку фоновой обработки заданий. Вы бы настроили рабочий экземпляр на EC2 или любом другом хостинговом решении, которое будет опрашивать очередь, выполнять задачу и повторять опрос навсегда.

Может быть проще использовать Amazon Simple Workflow Service , который, кажется, предназначен для того, что вы пытаетесь сделать (автоматизированные рабочие процессы). Примечание: я никогда не использовал его.

0 голосов
/ 12 августа 2011

загрузка с другого сервера; это набор zip-архивов со ссылками внутри RSS-канала

Вы можете использовать wget

распаковывается в S3

Попробуйте использовать s3-tools (github.com/timkay/aws/raw/master/aws)

обрабатывает каждый файл или группу распакованных файлов, выполняет преобразование данных и сохраняет их в SimpleDB / S3

Напишите свой собственный скрипт bash

повторение навсегда в зависимости от обновлений RSS

Еще один скрипт bash для проверки обновлений + запуск скрипта от Cron

...