J'aimerais connaître la meilleure façon de gérer les processus longs lancés à la demande à partir d'une page Web ASP.NET. Le processus peut consister en différentes étapes (comme le téléchargement de fichiers sur le serveur, l'exécution de packages SSIS, l'exécution de procédures stockées, etc.) et parfois le processus peut prendre jusqu'à deux heures pour se terminer. Si j'opte pour une exécution asynchrone à l'aide d'un service WCF, que se passe-t-il si l'utilisateur ferme le navigateur pendant que le processus est en cours, comment le résultat du processus ou de l'échec doit être affiché à l'utilisateur? Pour résoudre ce problème, je choisis les appels de service WCF unidirectionnels, mais le problème est que je dois créer une table de processus et stocker le résultat (et les messages d'erreur en cas d'échec des étapes et des étapes réussies) dans cette table qui est un surcoût supplémentaire parce qu'il y a beaucoup de tels processus avec différentes étapes que l'utilisateur peut invoquer de la page Web et l'utilisateur doit être informé de la progression (dans le cas le plus simple, le statut peut être "xyz de processus") et une fois cela fait, la sortie doit être affichée à l'utilisateur (par exemple en exécutant une procédure stockée).Traiter les processus longs dans ASP.NET
Quelle est la meilleure façon de concevoir la solution pour cela?
merci pour toutes les réponses. ce que j'ai besoin de construire ressemble plus à un petit outil de gestion de l'exécution d'un travail, déclenché à partir d'une interface web, ce qui n'est pas très commun. Je vais probablement créer une table de processus générique et stocker les messages de journal en tant que xml. les messages du journal indiquent principalement la progression de l'exécution. – RKP