3

Il est possible qu'une application Azure offre un service aux utilisateurs finaux pour effectuer des tâches de calcul de longue durée qui seront réparties sur plusieurs travailleurs. (avec stockage persistant)?Application Distributed Computing dans Azure fournie en tant que service Web à l'application View de bureau

Et serait-il possible de le fournir via un service Web auquel accède une application .Net de bureau (la vue) ou avez-vous toujours besoin d'utiliser une interface Web avec Azure?

Répondre

3

Azure gère facilement l'hébergement WCF et vous pouvez rendre votre point de terminaison WCF interne (pour une application hébergée Azure uniquement) ou externe (pour une application installée localement). Essayez ceci: créez une nouvelle application de cloud Azure et ajoutez un rôle Web de service WCF. Cela va essentiellement héberger WCF dans IIS, et vous fournira ce que vous cherchez.

Consultez également ma réponse here pour plus d'informations sur un correctif requis pour l'hébergement WCF. Enfin, à propos du traitement distribué: si votre traitement se fait sous forme d'action atomique, mais que vous voulez simplement mettre à l'échelle le nombre de choses que vous pouvez traiter, c'est très simple! Vous venez de créer un rôle de travail qui lit à partir d'une file d'attente et traite l'élément suivant. Ensuite, votre service WCF met simplement en file d'attente une demande de travail à effectuer. Lorsque le rôle de travail termine la tâche et écrit ses résultats dans le stockage, il lit la requête suivante. Vous pouvez ensuite mettre à l'échelle votre nombre d'instances de rôle de travail pour traiter les demandes dans un ensemble d'instances de machine virtuelle. Si, par contre, vous souhaitez traiter un élément de travail individuel sur plusieurs rôles de travail, vous devez créer un type de mécanisme personnalisé pour l'instruction de vos instances de rôle de travail individuelles. Pour cela, vous devrez probablement configurer des points de terminaison internes sur chaque rôle de travail et, dans votre service WCF, diviser la requête entre les instances de rôle de travail énumérées, puis envoyer un message direct à chaque instance avec son affectation spécifique.

+0

Merci. C'est le deuxième cas. Il est donc possible que le service WCF contrôle directement le nombre d'instances de rôles de travail créées et leurs points de terminaison exacts? – Peladao

+0

Si vous avez besoin d'un contrôle total, vous pouvez demander à votre service WCF de modifier la mise à l'échelle. Je suggère de garder cela externe, mais c'est entièrement à vous. Si, disons, vous avez créé 3 instances de rôle de travail, vous pouvez énumérer les instances et déterminer le port attribué à chaque instance. Ensuite, vous pouvez implémenter un service WCF interne dans votre rôle de travail et demander à la méthode de service Web d'appeler des instances individuelles, en indiquant chaque action à effectuer. –

+0

Super, merci, accepté. – Peladao