Diagramme de l'architecture
AppFabric est une version évoluée du service d'activation des processus Windows (WAS, Windows Process Activation Server) et du rôle de serveur d'applications sous Windows Server, qui permet d'héberger et de gérer les services WCF et WF. AppFabric est donc étroitement lié à .NET Framework 4 et utilise plusieurs fonctionnalités fournies dans le cadre des fonctionnalités principales offertes par Framework, telles que la persistance, la surveillance et l'hébergement des services WCF et WF. AppFabric est également intégré aux services Internet (IIS) et fournit des outils de gestion et de surveillance au sein de la console de gestion IIS.
Le schéma d'architecture suivant affiche les différentes parties d'AppFabric, ainsi que les composants .NET Framework 4 et IIS utilisés par AppFabric :
Cette rubrique présente l'architecture AppFabric et fournit des informations détaillées sur chaque technologie décrite dans le schéma de l'architecture.
Amélioration du service d'activation des processus Windows
Puisque le schéma de l'architecture affiche, dans la partie inférieure, les technologies de base à partir desquelles AppFabric a été développé, commençons ici par IIS et WAS.
IIS et WAS
AppFabric a été développé à partir de l'environnement d'hébergement fiable fourni par IIS et WAS. L'hébergement d'applications au sein de WAS fournit plusieurs fonctionnalités adaptées à une architecture orientée services, telles que :
L'activation basée sur des messages d'applications, qui permet aux applications de démarrer et de s'arrêter dynamiquement en réponse aux messages entrants.
Le recyclage fiable d'applications et de processus de travail pour préserver l'intégrité des applications en cours d'exécution.
La configuration et la gestion des applications.
L'organisation d'applications en sites à des fins d'adressage et de gestion. Au moment de l'exécution, les applications sont associées aux pools d'applications qui définissent les limites du processus d'exécution.
Toutefois, le déploiement, la gestion et la surveillance des services WCF et WF ne sont pas configurés pour toutes les fonctionnalités fournies. Il incombe au développeur de l'application de fournir des outils de déploiement, des conseils en matière de gestion et des solutions de surveillance personnalisées. En outre, il est difficile d'héberger un processus à long terme, tel qu'un flux de travail dans IIS et WAS, en raison du recyclage des processus et de l'activation à la demande. La persistance des états et l'activation de l'hôte doivent être configurées de manière explicite par le développeur, si cela est requis par l'application. AppFabric résout ces défauts en fournissant des outils et services qui permettent de déployer et de surveiller facilement les applications, ainsi que de configurer les fonctionnalités de l'environnement d'hébergement.
Composants et services d'exécution
AppFabric fournit des services, tels que la persistance de l'état d'un flux de travail à long terme vers un magasin de persistance, le routage basé sur du contenu et l'activation basée sur la configuration.
ASP.NET
ASP.NET fournit un grand nombre des fonctionnalités de base qui rendent attractif l'environnement d'hébergement WAS, telles que les domaines d'application, la gestion du cycle de vie, l'analyse du fonctionnement, le système de configuration courant et la compilation dynamique. ASP.NET fournit également une activation basée sur des messages pour les services WCF et WF qui reçoivent des messages via le protocole HTTP.
WCF et WF
Les services WCF et WF, qui fournissent des blocs fonctionnels pour la création d'applications SOA, sont les principaux composants d'AppFabric. WCF fournit un modèle de programmation unifié pour le développement d'applications SOA qui communiquent sur le Web, notamment une interopérabilité avec les applications développées à l'aide d'autres technologies. WF fournit un moteur de flux de travail qui permet d'implémenter des processus à long terme.
Pour plus d'informations sur WCF et WF, consultez les rubriques Windows Communication Foundation et Windows Workflow Foundation.
Bases de données d'exécution
Lors de l'implémentation de la persistance de l'état pour l'exécution d'applications ou lors de la capture d'informations de surveillance, l'un des premiers éléments à prendre en compte est le support de stockage des données. Pour les applications SOA, il est indispensable que ce magasin de données soit fiable, sécurisé, évolutif et hautement disponible. Vos applications étant peut-être constituées de composants qui s'exécutent sur plusieurs serveurs faisant partie d'une batterie, le magasin de données doit également être facilement accessible simultanément à partir de plusieurs serveurs.
Pour répondre à ces critères, AppFabric stocke toutes les informations de persistance et de surveillance dans un magasin de données.
Notes
Par défaut, les données de persistance et de surveillance sont stockées dans une même base de données. Toutefois, vous pouvez diviser les données en bases de données distinctes ou créer d'autres bases de données de persistance et de surveillance pour des applications spécifiques.
Pour plus d'informations sur les bases de données utilisées par AppFabric, consultez la rubrique Administration des bases de données.
Persistance
L'un des défis posés par l'hébergement d'une application est de s'assurer que celle-ci est en mesure de résister à des événements, tels que des défaillances ou des redémarrages du système. C'est le cas d'AppFabric qui utilise un fournisseur de persistance qui permet aux services WF d'enregistrer leur état dans la base de données de persistance, puis de reprendre l'exécution sous un système sain en cas de défaillance ou de redémarrage du système.
En plus de fournir une durabilité en cas de défaillance ou de redémarrage du système, les services WF à long terme peuvent s'interrompre lors de leur exécution normale pour libérer des ressources pour d'autres applications, puis reprendre leur fonctionnement lorsqu'un message arrive et doit être traité par une instance de flux de travail persistante. Il est également possible de déclencher la reprise des services WF après un intervalle donné à l'aide d'un minuteur durable qui surveille l'indicateur d'exécution sur les instances WF persistantes et remet l'instance en service.
Pour plus d'informations, consultez la rubrique Concepts relatifs à la persistance.
Hébergement
AppFabric est intégré à l'environnement d'hébergement des services ServiceHost (WCF hôte) et WorkflowServiceHost (WF hôte) avec IIS et WAS. Par exemple, les deux hôtes participent à l'arrêt et au recyclage correct d'appDomain, ainsi qu'aux processus de démarrage automatique des applications. Alors que les fonctionnalités combinées d'IIS et de WAS fournissent un environnement d'hébergement fiable pour les applications WCF et WF, tirer parti de ces fonctionnalités requiert souvent des efforts considérables de la part du développeur pour déployer et configurer une application. AppFabric fournit un ensemble complet d'outils qui permettent de configurer les applications de façon standard, sans avoir recours à des solutions de déploiement personnalisées ou à des procédures de configuration manuelle.
Pour plus d'informations sur la manière dont AppFabric exploite les technologies IIS et WAS, consultez la rubrique Concepts relatifs à l'hébergement.
Surveillance
En raison du couplage souple et de la nature distribuée des solutions développées à l'aide des services WCF et WF, la surveillance et la résolution des problèmes sont généralement des processus difficiles qui requièrent l'affichage de chaque service et la corrélation manuelle des événements observés afin d'obtenir une vue d'ensemble globale du fonctionnement de l'application. Dans AppFabric, les événements sont collectés et mis en corrélation à partir d'un large éventail de sources afin d'afficher de manière holistique l'exécution d'un processus en cours. Ces données sont stockées dans une base de données, dans laquelle il est possible de les extraire à l'aide des outils de surveillance hébergés dans la Console de gestion IIS ou des cmdlets Module ApplicationServer pour Windows PowerShell.
Pour plus d'informations sur la surveillance, consultez la rubrique Concepts en relation avec la surveillance.
API de gestion
Afin de prendre en charge un large éventail de scénarios de gestion, AppFabric permet d'accéder à l'ensemble des fonctionnalités de gestion via Module ApplicationServer pour Windows PowerShell sous forme de cmdlets. Cette implémentation offre plusieurs méthodes d'utilisation des fonctionnalités de gestion, telles que l'appel de cmdlets de manière interactive à partir de l'interpréteur de ligne de commande Windows PowerShell, la création de scripts appelant des cmdlets ou l'appel de cmdlets à partir d'une application personnalisée.
Pour plus d'informations, consultez la rubrique Outils de gestion.
Gestionnaire des services Internet (IIS)
Afin d'offrir une configuration et une gestion centralisées de vos services WF et WCF, AppFabric fournit un vaste éventail d'outils de gestion et de surveillance pour les services WCF et WF au sein du Gestionnaire des services Internet. AppFabric utilise également MSDeploy pour déployer des services dans un environnement d'hébergement WAS. MSDeploy permet de déployer des applications contenant les services WCF et WF.
Notes
Toutes les fonctionnalités de la Console de gestion IIS sont basées sur Module ApplicationServer pour Windows PowerShell et sont implémentées en tant que cmdlets Windows PowerShell. Toutes les tâches effectuées dans l'interface utilisateur AppFabric peuvent donc être scriptées.
Pour plus d'informations sur les extensions AppFabric du Gestionnaire des services Internet, consultez la rubrique Outils de gestion.
Visual Studio
Visual Studio 2010 ; offre un environnement de développement enrichi qui permet de créer des applications contenant des services WCF et WF. Visual Studio 2010 ; prend également en charge le test direct de vos services sous AppFabric via la touche F5, et permet de créer des packages de déploiement pour votre projet, que vous pouvez importer directement via MSDeploy dans un environnement AppFabric.
Pour plus d'informations sur Visual Studio 2010 ;, consultez la page Visual Studio 2010 (en anglais). Pour plus d'informations sur l'utilisation de Visual Studio 2010 ; sous AppFabric, consultez les rubriques suivantes :
Voir aussi
Concepts
2012-03-05