Il existe quelques options ici dans App Service. Je ne parlerai pas des applications logiques ou d'Azure Automation, qui touchent également cet espace.
Azure WebJobs
Cet article est honnêtement la meilleure explication, mais je vais résumer ici.
WebJobs à la demande aka. WebJobs programmés aka. WebJobs déclenchés
Les WebJobs déclenchés sont des WebJobs qui sont exécutés une fois lorsqu'une URL est appelée ou lorsque la propriété de planification est présente dans schedule.job . Les WebJobs planifiés ne sont que des WebJobs pour lesquels un travail Azure Scheduler a été créé pour appeler notre URL selon une planification, mais nous prenons également en charge la propriété de planification, comme mentionné précédemment.
Résumé:
+
Exécutable / Script à la demande
+
Exécutions programmées
-
Doit déclencher via le point de terminaison .scm
-
La mise à l'échelle est manuelle
-
La VM est toujours requise
WebJobs continus (non SDK)
Ces emplois durent indéfiniment et nous les réveillerons en cas de panne. Vous devez activer Always On pour que ceux-ci fonctionnent, ce qui signifie les exécuter au niveau de base et au-dessus.
Résumé:
+
Exécutable / Script toujours en cours d'exécution
-
Nécessite toujours activé - Niveau de base et supérieur
-
La VM est toujours requise
WebJobs en continu avec le SDK WebJobs
Ce n'est rien du point de vue "WebJobs the feature". Essentiellement, nous avons ce doux SDK que nous avons écrit pour cibler les WebJobs qui vous permet d'exécuter du code basé sur de simples déclencheurs. J'en parlerai plus tard.
Résumé:
+
Exécutable / Script toujours en cours d'exécution
+
Journalisation / tableau de bord plus riches
+
Déclencheurs pris en charge avec des tâches de longue durée
-
Nécessite toujours activé - Niveau de base et supérieur
-
La mise à l'échelle est manuelle à configurer
-
La mise en route peut être un peu fatigante
-
La VM est toujours requise
Kit de développement logiciel (SDK) Azure WebJobs
Le SDK Azure WebJobs est un SDK complètement distinct de la fonctionnalité de plateforme WebJobs. Il est conçu pour être exécuté dans un WebJob, mais peut vraiment être exécuté n'importe où. Nous avons des clients qui les exécutent sur des rôles de travail et même sur site ou sur d'autres clouds, bien que le support ne soit que le meilleur effort.
Le SDK vise simplement à faciliter l'exécution du code en réaction à un événement et à créer une liaison aux services / etc. facile. C'est honnêtement mieux couvert dans certains documents , mais le cœur de celui-ci est cette nature «événement» + «code». Nous avons également fait un travail d'extensiblité sympa, mais c'est secondaire par rapport à l'objectif principal.
Résumé:
- La plupart d'entre eux sont mentionnés ci-dessus
+
Vous pouvez étendre et exécuter ce que vous voulez. Controle total.
-
Le truc HTTP est un peu bancal, mais ça marche
Fonctions Azure
Azure Functions consiste à prendre cet objectif principal du SDK WebJobs, à l'héberger en tant que service et à faciliter la mise en route avec d'autres langues. Nous introduisons également le concept «sans serveur» ici car cela avait beaucoup de sens - nous savons comment notre SDK évolue, afin que nous puissions faire des choses intelligentes pour vous.
Azure Functions est une expérience très fortement gérée. Nous ne soutenons pas la venue de votre propre hôte. Actuellement, nous ne prenons pas en charge les extensions personnalisées, mais c'est quelque chose que nous étudions. Nous avons des opinions sur ce que vous pouvez et ne pouvez pas faire, mais pour les choses que nous activons, elles sont astucieuses et faciles à utiliser et à gérer.
La plupart des choses que nous avons faites pour améliorer les fonctions passent par le SDK WebJobs. Par exemple, nous allons télécharger un nouveau NuGet pour WebJobs qui augmente vraiment considérablement la vitesse de journalisation, ce qui présente d'énormes avantages pour les utilisateurs du SDK WebJobs. Dans les fonctions d'expédition comme "WebJobs SDK as a Service", nous avons vraiment amélioré de nombreux problèmes liés à l'expérience.
Je suis probablement biaisé car Functions est notre dernier et meilleur, mais n'hésitez pas à tirer plus de contre pour Functions à ma façon.
Je finirai probablement par publier un blog qui élabore un peu plus, mais j'ai essayé de garder cela aussi succinct que possible pour ce forum.