Fonctionnalités et capacités

Les fonctionnalités d'hébergement de Microsoft AppFabric 1.1 pour Windows Server améliorent l'hébergement des services .NET Framework version 4 Windows Communication Foundation (WCF) et Windows Workflow Foundation (WF) dans le service d'activation des processus Windows (WAS, Windows Process Activation Server) en fournissant les capacités suivantes :

  • déploiement et gestion simplifiés de services WCF et WF hébergés dans WAS ;

  • configuration simplifiée de la persistance pour des flux de travail durables ;

  • modèles de suivi personnalisables qui vous permettent de capturer uniquement les données dont vous avez besoin ;

  • stockage dédié, pouvant faire l'objet de requêtes pour les données suivies ;

  • cmdlets Windows PowerShell permettant de créer des scripts de gestion personnalisés ;

  • surveillance personnalisable de services hébergés ;

  • prise en charge du protocole IPv6 (Internet Protocol Version 6) via la pile Windows IPv6 ;

  • démarrage automatique d'applications pour réduire la latence du service.

    Notes

    Cette fonctionnalité requiert Windows Server 2008 R2 ou Windows® 7.

Les fonctionnalités de Mise en cache d'AppFabric fournissent une plateforme de cache en mémoire distribuée pour développer des applications évolutives, disponibles et hautement performantes. Les principales fonctionnalités de Mise en cache d'AppFabric sont les suivantes :

  • mise en cache de tout objet CLR sérialisable et fourniture d'accès via des API de cache simples ;

  • prise en charge de l'échelle de l'entreprise, de dizaines à des centaines d'ordinateurs ;

  • possibilité de configurer comme un service accessible sur le réseau ;

  • prise en charge de configurations de cache courantes ;

  • prise en charge de la mise à échelle dynamique par l'ajout de nœuds ;

  • fonctionnalité de haute disponibilité qui prend en charge la disponibilité continue des données mises en cache en stockant des copies de celles-ci sur des hôtes de cache distincts ;

  • équilibrage automatique de la charge ;

  • intégration avec des outils d'administration et de surveillance tels que le suivi d'événements pour Windows (ETW) et System Center ;

  • intégration étroite avec ASP.NET pour pouvoir mettre des données de session ASP.NET dans le cache sans devoir les écrire dans des bases de données sources ; possibilité également de l'utiliser comme cache pour des données d'application pour pouvoir les mettre en cache dans la batterie entière de serveurs Web.

Scénarios et configurations non pris en charge

.NET Framework 4 permet de définir des services de flux de travail à l'aide de XAML (eXtensible Application Markup Language). AppFabric est conçu pour fonctionner avec les services de flux de travail .NET Framework 4, notamment ceux activés soit à l'aide d'un fichier SVC, soit via la nouvelle fonctionnalité d'activation basée sur la configuration qui permet à un service Web d'être activé sans avoir recours à un fichier SVC. Pour plus d'informations sur l'activation basée sur la configuration, consultez l'exemple Configuration-Based Activation. Pour plus d'informations sur la définition d'un flux de travail en tant que service à l'aide du langage XAML, consultez la page WCF And WF Services In The .NET Framework 4 And “Dublin” (en anglais).

Toutefois, les services WCF et WF hébergés dans le Service d’activation des processus Windows (WAS) offrent les fonctionnalités d'activation et de configuration du service suivantes non prises en charge par AppFabric.

  • Les services intégrés à une application Web pré-compilée ne sont pas pris en charge. La précompilation est un mécanisme qu'ASP.NET utilise pour améliorer les performances des sites Web. Lorsque l'outil Compilateur ASP.NET rencontre les ressources d'une application Web lors de la première requête, le contenu des types de fichiers courants utilisés pour l'activation (tels qu'ASPX ou SVC) est compilé dans un assembly. Il est ensuite remplacé par du texte généré automatiquement. Cela permet de garantir que le fichier reste dans le point d'entrée d'activation physique (et l'URL), même si le contenu associé n'est plus utilisé. Les outils AppFabric dépendent de l'analyse du contenu du fichier SVC pour découvrir et gérer la configuration du service. Une fois le contenu du fichier SVC remplacé par le texte généré automatiquement par le compilateur ASP.NET, AppFabric ne permet plus de répertorier et de gérer ces services. Comme indiqué précédemment, un service de flux de travail .NET Framework 4 défini à l'aide du langage XAML et intégré à une application ASP.NET précompilée continue à fonctionner dans Microsoft AppFabric 1.1 pour Windows Server. Pour plus d'informations, consultez la page Précompilation du site Web ASP.NET.

  • Les services inscrits et activés au moment de l'exécution à l'aide de la fonctionnalité RouteTable.Routes.Add() ne sont pas pris en charge. La classe RouteTable de .NET Framework permet de stocker les itinéraires URL d'une application. Lorsqu'une application ASP.NET traite une requête, elle parcourt la collection d'itinéraires de la propriété Routes pour rechercher le premier itinéraire qui correspond au format de la requête URL. Pour plus d'informations, consultez la page RouteTable, classe.

    Notes

    L'utilisation de la classe RouteTable pour l'inscription d'un service est une méthode courante pour les services RESTful qui requièrent des URL REST classiques. Par exemple, https://server/AutoService/Car/123-345-678.

Fonctionnalités d'hébergement d'AppFabric

Les fonctionnalités d'hébergement d'AppFabric dépendent de WAS pour fournir l'environnement d'hébergement des services WCF et WF, et étendent la console de gestion IIS afin de fournir des outils de gestion et de configuration pour des services hébergés dans WAS. Si vous disposez de services WCF ou WF existants hébergés dans WAS, les services d'hébergement d'AppFabric permettent de les énumérer et de les gérer. En revanche, si vos services sont hébergés dans un service Windows géré ou une application autonome, vous devez les faire migrer vers l'environnement d'hébergement WAS avant de pouvoir utiliser les fonctionnalités d'hébergement d'AppFabric avec ces services.

Si vous hébergez actuellement des services sur un hôte autre que WAS, il est recommandé d'évaluer soigneusement les fonctionnalités et capacités d'AppFabric, ainsi que celles de l'environnement d'hébergement WAS, avant de décider de déplacer vos services vers l'hôte WAS. Pour plus d'informations sur les options d'hébergement pour les services WCF et WF, consultez la rubrique Services d'hébergement (https://go.microsoft.com/fwlink/?LinkId=166423).

Déploiement d'applications

Les méthodes actuelles de déploiement d'applications incluent l'utilisation de Xcopy ou de packages de déploiement basés sur des technologies telles que Windows Installer. Xcopy déplace les artefacts d'application du dossier correspondant à un répertoire virtuel vers un dossier de destination. Des packages de déploiement sont utilisés pour déployer des artefacts supplémentaires, tels que des certificats, des comptes d'utilisateur associés à un pool d'applications, des paramètres de Registre et des données de base de données. Si les technologies de déploiement existantes conviennent pour des déploiements sur un serveur unique, Xcopy est souvent trop simple, tandis que la création d'un package Windows Installer est souvent trop complexe, son implémentation pouvant nécessiter de disposer de connaissances spécifiques en matière de développement. Il n'est pas non plus particulièrement approprié pour le déploiement d'un service sur une batterie de serveurs à des fins d'agrandissement d'échelle.

L'outil de déploiement Web des services Internet (IIS), MSDeploy, offre une fonctionnalité simple de déploiement basée sur des packages qui peut être utilisée à partir d'une ligne de commande, de la Console de gestion IIS ou de Visual Studio 2010 ;. MSDeploy permet également de synchroniser plusieurs ordinateur entre eux.

Pour plus d’informations sur MSDeploy, consultez la rubrique Web Deployment Tool for IIS7 (https://go.microsoft.com/fwlink/?LinkId=127069).

Configuration d'applications

Un aspect clé de la gestion des applications est la possibilité d'appliquer des options de configuration qui affectent le comportement des applications sans modifier le code sous-jacent. AppFabric offre les fonctionnalités suivantes pour la configuration des applications et services hébergés :

Configuration simplifiée des applications. Le principe directeur utilisé par les fonctionnalités d'hébergement d'AppFabric est que seuls les paramètres de configuration figurant dans les fichiers Web.config sont utilisés à des fins d'administration. Les paramètres définis dans le code source ne sont pas accessibles et les outils d'administration d'AppFabric ne permettent pas de les modifier. Ce principe s'applique tant au code impératif, tel que C#, qu'au code déclaratif, tel que XAML. Même si le code proprement dit est aisément visible, ce qui est le cas de XAML, les paramètres sont considérés comme étant verrouillés et donc inaccessibles.

Pour simplifier la gestion de la configuration, AppFabric applique des paramètres par défaut pour chaque nœud de serveur configuré par l'installation. Ces paramètres sont définis dans le fichier Web.config racine et peuvent être utilisés par toute application hébergée. Un administrateur peut également appliquer des paramètres de configuration spécifiques d'un site ou d'une application via leur fichier Web.config afin d'obtenir un comportement de suivi ou de persistance plus précis pour les applications hébergées.

Options de configuration de WCF fournies via la Console de gestion IIS. La configuration actuelle de WCF à l'aide de l'outil Éditeur de configuration de service WCF (SvcConfigEditor.exe) pose des défis tant aux développeurs qu'aux professionnels de l'informatique. En particulier, l'utilisation de l'Éditeur de configuration de service requiert une connaissance assez approfondie du modèle de service WCF, qui introduit une surcharge pour les professionnels de l'informatique.

AppFabric améliore cette expérience en étendant la console de gestion IIS habituelle à l'aide des extensions du Gestionnaire des services Internet pour WCF et WF pour accomplir les tâches de configuration les plus courantes. Les extensions du Gestionnaire des services Internet permettent, par exemple, d'accomplir des tâches telles que l'activation du suivi, la définition de paramètres de limitation d'application et l'énumération de tous les services en cours d'exécution. D'autres options de configuration peuvent être appliquées à l'aide de l'Assistant Configuration d'AppFabric ou de l'Éditeur de configuration des services Internet disponible dans IIS 7.0.

Configuration de la persistance WF. Conformément au concept de flux de travail durables pour les processus métier de longue durée, les services WF peuvent être conservés dans un magasin de persistance, puis reprendre un traitement quand un événement spécifique, tel que la réception d'un message, se produit. Toutefois, la configuration de la persistance reste un processus essentiellement manuel qui requiert la création d'un service de persistance s'appuyant sur un mécanisme de stockage durable.

Pour simplifier la configuration de la persistance des flux de travail et pour prendre en charge les configurations de batterie de serveurs, les services d'hébergement d'AppFabric offrent un magasin de persistance basé sur SQL Server, ainsi qu'un fournisseur de persistance SQL que peut exploiter tout flux de travail durable hébergé dans WAS. AppFabric vous permet également d'utiliser un magasin de persistance personnalisé et un fournisseur de votre choix. AppFabric autorise la configuration soit de paramètres de persistance par défaut dont héritent toutes les applications hébergées, soit de paramètres de persistance spécifiques d'une application individuelle.

Cmdlets Windows PowerShell. Si la fourniture d'options de configuration et de gestion dans la Console de gestion IIS permet une administration aisée d'applications hébergées, il est souvent souhaitable de créer des scripts qui automatisent des scénarios de configuration et de gestion en plusieurs étapes.

Pour prendre en charge la création de solutions de script, les fonctionnalités d'hébergement d'AppFabric incluent le module ApplicationServer pour Windows PowerShell, qui contient des cmdlets qui offrent le même niveau d'accès à la configuration et à la gestion d'applications gérées que les outils de la console de gestion IIS.

Surveillance des applications

Outre la simplification du déploiement, de la gestion et de la configuration des services hébergés, les services d'hébergement d'AppFabric facilitent la surveillance des applications en capturant les informations de suivi émises en cours d'exécution, et en les enregistrant dans la base de données de surveillance. Une fois capturées, ces informations sont accessibles à l'aide de la fonctionnalité de tableau de bord de la Console de gestion IIS, ou directement dans la base de données de surveillance.

Il est possible de personnaliser les informations collectées à partir d'une application en utilisant des modèles de suivi pour capturer des informations telles que l'état d'activité (démarrage, arrêt, erreur), le contenu de variables spécifiques à l'intérieur d'un flux de travail ou des informations de suivi personnalisées émises par l'application à l'aide d'un enregistrement de suivi personnalisé.

Hébergement des applications

Les services d'hébergement d'AppFabric opèrent avec WAS pour offrir un environnement d'hébergement fiable pour les applications WCF et WF de niveau intermédiaire. Les fonctionnalités offertes par WAS sont, entre autres :

  • L'activation par message d'applications et de processus de travail. Les applications démarrent et s'arrêtent de façon dynamique en réponse à des éléments de travail entrants via des protocoles réseau HTTP et non-HTTP.

  • 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 centralisées des applications.

Outre les fonctionnalités traditionnellement fournies par WAS, .NET Framework 4 apporte des améliorations dans le domaine de l'activation d'un service hébergé. L'activation d'un service créé à l'aide de .NET Framework 3.5 requiert la création d'un « fichier de service » séparé (avec une extension .svc), qui doit être déployé avec le service. En outre, si le service utilise WF, un fichier XAML (avec une extension .xaml) supplémentaire doit être créé et déployé avec le service. .NET Framework 4 permet l'activation directe d'un service WF sans devoir créer et déployer un fichier .svc séparé. Le fichier XAML doit avoir l'extension .xamlx pour permettre une activation directe de l'application WF associée par l'hôte. Il est possible d'activer des applications WCF et WF directement à partir du fichier Web.config sans qu'un fichier .svc séparé soit requis. Pour plus d'informations sur cet aspect et d'autres fonctionnalités de l'environnement d'hébergement WAS, consultez la rubrique Hébergement (https://go.microsoft.com/fwlink/?LinkId=166403).

Si l'activation simplifiée d'un service hébergé élimine l'exigence d'un fichier de service, elle n'offre pas la mécanique d'activation par message utilisée par WAS. Quand un service est hébergé dans WAS, aucune instance de service n'est créée tant qu'un message adressé au service n'est pas reçu. Cela signifie que, quand un service démarre pour le première fois, il doit initialiser une nouvelle instance, par exemple, en allouant de la mémoire, en chargeant des bibliothèques et en créant des objets. Si votre application traite des données sensibles au temps, ce délai de démarrage de services individuels peut être inacceptable. Même si vous ne traitez pas de données sensibles au temps, cette dépendance d'une activation par message impose des limites à la manière dont votre service peut recevoir des données, puisque l'activation par message requiert un activateur WAS. .NET intègre un activateur pour les protocoles suivants :

  • http : assure l'activation HTTP pour IIS 7.0 et WCF.

  • net.tcp : assure l'activation par port TCP.

  • net.pipe : assure l'activation par canal nommé.

  • net.msmq : utilisé avec les applications de mise en fille d'attente des messages (MSMQ) basées sur WCF.

  • msmq.formatname : assure la compatibilité descendante avec des applications MSMQ existantes.

Pour résoudre le problème de limitation de l'activation par message, les services d'hébergement d'AppFabric peuvent tirer parti de la fonctionnalité de démarrage automatique des services Internet (IIS) offerte par Windows Server 2008 R2 et Windows 7 pour démarrer automatiquement un service hébergé WAS dès son déploiement au lieu d'attendre un message d'activation.

Fonctionnalités de Mise en cache d'AppFabric

Les services de Mise en cache d'AppFabric fusionnent la mémoire de plusieurs ordinateurs pour fournir aux applications une vue de cache unifié unique. Les applications peuvent stocker tout objet CLR sérialisable sans se préoccuper de l'emplacement de stockage. L'évolutivité peut être obtenue en ajoutant simplement des ordinateurs à la demande. Les services de Mise en cache d'AppFabric permettent également la sauvegarde de copies de données dans le cluster, protégeant ainsi les données contre les défaillances. Les services de Mise en cache d'AppFabric incluent un objet fournisseur de session ASP.NET qui permet le stockage d'objets session ASP.NET dans le cache distribué, sans nécessité d'écrire dans des bases de données. Cette solution augmente les performances et l'évolutivité des applications ASP.NET.

  2012-03-05