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

Cette session suppose une connaissance préalable des grands principes de Workflow Foundation Nous parlerons très peu de lécriture de workflows Une session.

Présentations similaires


Présentation au sujet: "Cette session suppose une connaissance préalable des grands principes de Workflow Foundation Nous parlerons très peu de lécriture de workflows Une session."— Transcription de la présentation:

1

2 Cette session suppose une connaissance préalable des grands principes de Workflow Foundation Nous parlerons très peu de lécriture de workflows Une session dintroduction est programmée en salle 253 … il est encore temps de changer davis !

3 Un bref rappel Scénarios sans concurrence daccè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

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

5 Un framework applicatif permettant lintégration et le développement de Workflow. Cest é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 sappuyer

6 Processus hôte Workflow Foundation Runtime Un Workflow Une Activité Services Points dextensibilité Activités de base Vos activités

7 Processus hôte Workflow Foundation Runtime Services

8 Permet léchange dinformations entre les applications hôtes et le moteur de Workflow Communication Gestion des threads Scheduling Permet denregistrer létat du Workflow dans un référentiel (base de données…) Persistance Permet de conserver une trace des étapes dexécution dun Workflow dans un référentiel (base de données…) TrackingEtc.

9

10 Les services se déclarent à linitialisation du runtime, en impératif ….. ou en déclaratif

11 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 dun WF En sortie dactivité

12

13 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 daccès entre le host et les clients ? Comment gérer la montée en charge ?

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

15 Le cas idéal : workflow sans concurrence Enchaînement dactions atomiques dans un automate à états finis Exemple : routage dun utilisateur sur un automate daccueil téléphonique Le reste du temps, la concurrence est gérée Par le Host (via le runtime) sil est unique Par le service de persistance sinon

16

17 Cest la sérialisation binaire.Net Attention au contenu de vos instances Attention aux performances CPU : complexité de la sérialisation Disque : volume dune 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 !

18 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 daccéder à une instance Mécanisme de verrou sur chargement

19 WCF a de bonnes qualités de communication, dans quel processus linstaller ? 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

20 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

21 Threads dinstance 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 dactivation asynchrone Votre code ne peut pas fournir de thread lorsquaucune page ne sexécute.. Le ManualWorkflowSchedulerService peut créer un thread de background destiné à faire tourner les instances indépendamment des pages

22

23 MOSS Fournit toute la structure dhé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 dun service précis de persistance

24

25

26 Sinformer - Un portail dinformations, 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

27 © 2007 Microsoft France Votre potentiel, notre passion TM


Télécharger ppt "Cette session suppose une connaissance préalable des grands principes de Workflow Foundation Nous parlerons très peu de lécriture de workflows Une session."

Présentations similaires


Annonces Google