0

Я использую SQS в качестве «моста» в своей системе, которая получает задания от GAE и будет обрабатываться на EC2. В настоящее время я могу добавить задачи в эту очередь из GAE, но с некоторыми трудностями о том, как использовать эти задачи на EC2. Так что мои вопросы:Опрос и употребление сообщений Amazon SQS как услуга

  1. Каковы рекомендуемые способы построения задачи потребителя (Python, основанный) на EC2, который будет держать глаз на SQS и назначить новые входящие задания к работам?
  2. Имеет ли AWS этот продукт для мониторинга SQS? Если нет, то Celeryperiod task хороший кандидат?
+0

Вы нашли ответ на этот вопрос? Мне тоже интересно. – Colleen

ответ

1

Задача потребителя - просто (длинный) опроллер. Библиотека boto Python поддерживает SQS. AWS предоставляет услугу SQS, но они не делают потребителей. Я не знаком с сельдереем.

Стандартная практика - опрос для сообщения (который отмечает его как «невидимый»), а затем выполняет действие на стороне потребителя. При завершении действия удалите сообщение. Если действие завершилось неудачно, потому что один из ваших вычислительных узлов исчез, сообщение станет видимым через некоторое время, и оно будет отобрано в будущем опросе. Если вам нужно что-то умнее, вы можете захотеть реализовать внешний ESB или экспериментировать с AWS SWF.

http://boto.readthedocs.org/en/latest/ref/sqs.html

http://aws.amazon.com/swf/

+0

Спасибо за ваши предложения. Я проведу SWF. Но я также открыт для любой системы мониторинга sqs, которая периодически проводит опрос в очереди и пожарных. –

0

Вы можете использовать сервис AWS Beanstalk потреблять задачи в очереди AWS Beanstalk with SQS

Если вы не хотите, чтобы пробое кода для запуска в Beanstalk вы можете напишите некоторый код для beanstalk, чтобы вытащить элемент из очереди, а затем отправить его на ваш сервер ec2, по сути дела сделав Beanstalk раздавать сообщения/задачи в очереди. Это устранило бы необходимость того, чтобы ваш сервер ec2 постоянно проводил опрос в очереди

Смежные вопросы