Как перенести задачу из EC2 на рабочий через SQS

У меня есть Elastic bean EC2 с настройкой Worker (я использую это для периодических задач). Насколько я понимаю, периодические задачи ставятся в очередь в SQS & читаются работником и исполняются как http://localhost HTTP Post на URL, который мы установили в cron.yaml

 - name: "db-backup"url: "/cron/db-backup"schedule: "30 21 * * *"

Как нам этого добиться, используя AWS SDK? Я вижу только QueueUrl а также MessageBody, Как мне указать URL-путь, т.е. /cron/db-backup

$client->sendMessage(array(
'QueueUrl'    => $queueUrl,
'MessageBody' => 'Hello World!',
));

Где я должен указать путь /cron/db-backup? Или я неправильно понял концепцию?

0

Решение

Оказывается, я был отчасти прав. Вы не можете установить путь HTTP для отдельных сообщений, которые вы отправляете в очередь, но вы можете & установите общий путь для всех сообщений, которые будут доставлены оттуда, где вы будете реализовывать логику диспетчеризации для потока кода.

Вы устанавливаете это при настройке рабочего уровня & может быть изменено в любое время из раздела конфигурации рабочего.

Конфигурация рабочего

Если вы установите тип MIME как Применение / JSON вы получаете полезную нагрузку от file_get_contents ( ‘PHP: // ввод’) & если х-WWW-форм-urlencoded это собирается быть $ _POST

Как бы просто это ни звучало, я был совершенно растерян, учитывая, что я могу использовать несколько http-путей (URL) при работе в качестве периодической задачи. Я надеюсь, что это помогает и другим.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]