2017-02-21 29 views
0

У меня есть AzureWorker, который получает SMTP-сообщения из портов TCP и толкает их в очереди. Другие потоки поднимают эти сообщения из очередей и обрабатывают их. В настоящее время потоки процессов имеют свою логику опроса в очереди. Просто они проверяют очереди и увеличивают интервал ожидания, если очереди пустые.Запуск WebJobs в роли лазурного рабочего

Я хочу, чтобы упростить логику очереди и использовать другие Webjobs функциональности в этом AzureWorker.

Можно ли начать WebJobs нить в этом AzureWorker и пусть этот поток обрабатывать детали? Есть ли какие-то ограничения, которые мне нужно знать?

ответ

1

Розы Azure Worker - это функция Azure Cloud Services. Azure Web Jobs - это функция Azure App Service. Они оба созданы для обеспечения аналогичной возможности запуска фоновых задач процесса в контексте вашего приложения. Хотя, поскольку они являются функциями различных сервисов Azure, их нельзя запускать вместе, как вы спрашиваете вложенным образом.

0

Можно ли запустить поток WebJobs в этом AzureWorker и позволить этому потоку обрабатывать детали?

Я согласен с Крисом Пицманном, он не позволяет нам запускать нить WebJobs непосредственно в роли Azure Worker.

Другие темы собирают эти сообщения из очередей и обрабатывают их. В настоящее время потоки процессов имеют свою логику опроса в очереди. Просто они проверяют очереди и увеличивают интервал ожидания, если очереди пустые.

Я хочу упростить логику очереди и использовать другие функции Webjobs в этом AzureWorker.

Если вы хотите выполнить эту задачу с помощью WebJobs, вы можете написать программу и запустить в качестве приложения WebJob в своей службе приложений Azure. И WebJobs API предоставляет возможность динамического запуска/остановки WebJobs через REST API, вы можете использовать его для управления своими веб-приложениями в роли вашего рабочего.