Правильный способ использовать работу Hangfire в лазури - PullRequest
0 голосов
/ 04 октября 2018

Я использую Hang Fire в своем приложении веб-API Asp.Net Core, которое развернуто в службе приложений Azure.

Нам нужно выполнить несколько заданий, которые требуют значительных ресурсов процессора и долго работают.Можно ли создать другую службу приложений и развернуть совершенно новый проект, который будет просто запускать задания в этой службе приложений?Но это будет связано с той же базой данных, к которой подключена другая служба приложений.Это нормально или будет проблемой?

Спасибо, Джо

1 Ответ

0 голосов
/ 03 января 2019

Если вы планируете задания из веб-приложения, используя Hangfire, программа-опросчик Hangfire может поддерживать приложение достаточно занятым, чтобы никогда не отключаться.В противном случае включение Always-On должно предотвратить любое (не катастрофическое) отключение, поэтому программа всегда может работать.

Но, если вы похожи на меня, вы или ваши клиенты хотитеприложение, чтобы раскрутить, когда это возможно.Таким образом, вы можете планировать свои задачи, используя WebJobs или другие инструменты планирования и организации очередей на платформе Azure, инструменты, предназначенные только для вашего сценария.WebJob может вызвать задачу, которой Hangfire управляет только для сохранения, но не для планирования.Код управляемой задачи может храниться в исходном веб-приложении.

Другими словами, если вы создаете отдельную службу приложений, потому что беспокоитесь о надежности своего веб-приложения или считаете, что оно лучшепопрактикуйтесь, я бы сказал, не беспокойтесь.

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

...