La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Contenu coréalisé avec Florent Santin. Un bref rappel Scénarios sans concurrence d’accès Hosting embarqué (mono-host) Hosting embarqué (multi-host) Gestion.

Présentations similaires


Présentation au sujet: "Contenu coréalisé avec Florent Santin. Un bref rappel Scénarios sans concurrence d’accès Hosting embarqué (mono-host) Hosting embarqué (multi-host) Gestion."— Transcription de la présentation:

1 Contenu coréalisé avec Florent Santin

2 Un bref rappel Scénarios sans concurrence d’accès Hosting embarqué (mono-host) Hosting embarqué (multi-host) Gestion de la concurrence Hosting centralisé Robustesse, montée en charge Hosting réparti dans IIS Les solutions pré-packagées Le wizard Web Services / MOSS Conclusion

3 Un Workflow est un ensemble d’activités qui coordonnent des personnes et/ou des logiciels… ValidationResponsable Exemples : ValidationInventaire Diagramme de flux …en définissant un chemin d’exécution Automate à états

4 Un framework applicatif permettant l’intégration et le développement de Workflow. C’est également un modèle de programmation extensible Il nécessite le framework 3.0 et Visual Studio 2005 pour tirer pleinement parti des fonctionnalités offertes Proposer une plate-forme sur laquelle tout l’écosystème Microsoft puisse s’appuyer

5 Processus hôte Workflow Foundation Runtime Un Workflow Une Activité Services Points d’extensibilité Activités de base Vos activités

6 Processus hôte Workflow Foundation Runtime Services

7 Permet l’échange d’informations entre les applications hôtes et le moteur de Workflow Communication Gestion des threads Scheduling Permet d’enregistrer l’état du Workflow dans un référentiel (base de données…) Persistance Permet de conserver une trace des étapes d’exécution d’un Workflow dans un référentiel (base de données…) TrackingEtc.

8

9 Les services se déclarent à l’initialisation du runtime, en impératif ….. ou en déclaratif

10 Sérialise et stocke des instances de WF Une implémentation en standard Sql Server Quand est-il invoqué ? Par défaut : rarement (Tx/Comp, Terminate/suspend, demande explicite) Par configuration : à chaque Idle A quelle(s) étape(s) peut-on persister ? A certains moments-clés de la vie d’un WF En sortie d’activité

11

12 Quel que soit ce host (Web Service, Executable, Sharepoint, ….) : Comment gérer les communications entre le client et le host ? Comment gérer la concurrence d’accès entre le host et les clients ? Comment gérer la montée en charge ?

13 Contrats et gestion d’état L’activation initiale est stateless Les appels ultérieurs font référence à une instance Le contrat de communication WF ne comporte pas de notion d’instance Deux approches pour véhiculer l’ID d’instance Approche du wizard WS : cookie Approche plus générale : encapsuler les contrats

14 Le cas idéal : workflow sans concurrence Enchaînement d’actions atomiques dans un automate à états finis Exemple : routage d’un utilisateur sur un automate d’accueil téléphonique Le reste du temps, la concurrence est gérée Par le Host (via le runtime) s’il est unique Par le service de persistance sinon

15

16 C’est la sérialisation binaire.Net Attention au contenu de vos instances Attention aux performances CPU : complexité de la sérialisation Disque : volume d’une instance sérialisée Les données persistées sont opaques (pas de requêtage en base) On double souvent le service par une persistance métier (dans les instances) Soit par personnalisation du service de Tracking Soit à la main !

17 Lorsque la charge augmente, on doit Monter les hosts en ferme Monter la base en cluster Deux nouvelles situations à traiter : Un host peut tomber avec N instances en mémoire Mécanisme de détection des instances en perdition N hosts peuvent tenter d’accéder à une instance Mécanisme de verrou sur chargement

18 WCF a de bonnes qualités de communication, dans quel processus l’installer ? Dans COM+ Dans un service Windows Dans IIS IIS est très intéressant Monitoring, relance, protection contre le crash, … Modèle de WebGarden Déploiement très simple Seule limite : http only.. Pour le moment

19 IIS 2IIS x IIS 1 Workflow Runtime 1 Host 1 SQL Persistence Service Workflow Runtime 2 Host 2 SQL Persistence Service Workflow Runtime 3 Host 3 SQL Persistence Service Workflow Runtime N Host N SQL Persistence Service

20 Threads d’instance Le runtime de WF ne crée jamais de thread, et compte sur un service de scheduling pour lui en fournir Par défaut, le scheduler prend dans un threadpool, mais dans ASP.Net on risque une famine de threads Le ManualWorkflowSchedulerService « emprunte » le thread courant Thread d’activation asynchrone Votre code ne peut pas fournir de thread lorsqu’aucune page ne s’exécute.. Le ManualWorkflowSchedulerService peut créer un thread de background destiné à faire tourner les instances indépendamment des pages

21

22 MOSS Fournit toute la structure d’hébergement Comporte des designers spécialisés Tourné vers des scénarios métier précis Web Services Wizard Impose ses propres activités de communication Gère toute la communication Masque les problèmes de threading et timers Indépendant d’un service précis de persistance

23

24 S’informer - Un portail d’informations, des événements, une newsletter bimensuelle personnalisée Se former - Des webcasts, des articles techniques, des téléchargements, des forums pour échanger avec vos pairs Bénéficier de services - Des cursus de formations et de certifications, des offres de support technique Visual Studio 2005 + Abonnement MSDN Premium Abonnement TechNet Plus : Versions d’éval + 2 incidents support

25 © 2007 Microsoft France Votre potentiel, notre passion TM

26

27 Création du Host WCF, ajout de la dll du WF, Passage sur persistance SQL Définition d’un contrat Client-Host Récupération de la liste des instances pour redémarrage Gestion de la concurrence Message : avec un seul host, si qqun se pointe vers l’instance 21, c’est le runtime qui gère ça

28 Pépins de threading Pépins e

29 Utiliser la font SEGOE Disponible sur https://mediabank.partners.extranet.microsoft.com https://mediabank.partners.extranet.microsoft.com Si nécessaire, utiliser les palettes de couleurs ci-dessous

30

31

32

33

34

35 Participants : utilisateurs, rôles Type : flexible, dynamique Données : peu structurées Participants : utilisateurs, rôles Type : flexible, dynamique Données : peu structurées Participants : applications Type : processus prédéfini Données : structurées, transactionnelles Information Worker Validation de document… Information Worker Validation de document… Technique Humain Windows Workflow Foundation Business to Business Commandes Business to Business Commandes Applications Line of Business B2B, ventes… Applications Line of Business B2B, ventes… CRM ERP Applications internes Demande de support, achats… Applications internes Demande de support, achats… Développement.NET Coordination… Développement.NET Coordination…


Télécharger ppt "Contenu coréalisé avec Florent Santin. Un bref rappel Scénarios sans concurrence d’accès Hosting embarqué (mono-host) Hosting embarqué (multi-host) Gestion."

Présentations similaires


Annonces Google