Я в настоящее время есть несколько WebAPI проектов, использующие несколько библиотек классов, такие как поиск адреса, проверки банки, хранение изображений и т.д.Использования Azure WebJobs для ответов на спрос
В настоящее время все они находятся в совместном решении, но я Мы планируем разделить их. Я думал о перемещении библиотек в пакеты NuGet, чтобы они были отделены от проектов API и были должным образом разделены.
Однако, если я вношу изменения в один из этих компонентов, мне нужно будет построить и повторно развернуть службу API, даже если это отдельный компонент, который изменился.
Я думал о том, чтобы эти компоненты были в отдельном сервисе, но, по-видимому, немного накладные расходы, что это такое.
Я смотрю на Azure WebJobs и думаю, что смогу перенести эти компоненты на это. У меня есть два вопроса, связанных с этим:
Являются ли WebJobs подходящими для вызова по требованию (не используя очередь)? Запрос будет активирован у пользователя на веб-сайте, который вызывает мою службу API, которая затем вызывает веб-работу, поэтому она должна быть быстрой.
Может ли WebJob вернуть данные? Я видел примеры, где он обрабатывает и обновляет базу данных, но мне нужен ответ (в идеале Json) для моей службы API.
Благодаря
Не правда ли, что у вас будет такая же проблема? Если ваш WebJob размещен в AppService в Azure, в чем разница между развертыванием WebAPI и развертыванием WebJob? –
Предполагаю, что я могу развернуть новую версию WebJob без необходимости касаться службы API? – ADringer
В соответствии с этим (http://stackoverflow.com/questions/22265546/can-i-invoke-an-azure-webjob-from-an-azure-website-and-pass-it-parameters) ваш план не будет работать , В настоящее время нет способа передать параметры в WebJob при попытке вызвать его. Кроме того, WebJob реализуется как метод «public static void», поэтому вы не сможете вернуть данные из него. –