1 / 32

ARC 303 Choisir une technologie d’accès aux données distantes

ARC 303 Choisir une technologie d’accès aux données distantes. Février 2011 David Rousset & Stéphanie Hertrich Relations Techniques Développeurs Microsoft. Historique de l’accès aux données. Structurer et stocker. Fichiers, DB, Tables, Relations. Multi-client, résolution des conflits.

lana
Download Presentation

ARC 303 Choisir une technologie d’accès aux données distantes

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ARC 303 Choisir une technologie d’accès aux données distantes Février 2011 David Rousset & Stéphanie Hertrich Relations Techniques Développeurs Microsoft

  2. Historique de l’accès aux données Structurer et stocker Fichiers, DB, Tables, Relations Multi-client, résolution des conflits Serveur de BDD Evolution de l’accès aux données Simplifier l’accès aux données ODBC, Providers, ADO .Net, … Mapping Objet-Relationnel Linq To Sql, Entity Framework, Nhibernate, … Publication des données sur le réseau ?

  3. De quoi parle-t-on ? Data DAL ? Exposition des données LAN, WAN, … ? Consommation et manipulation des données WP7 Silverlight .Net Html5

  4. Agenda • Présentation des candidats • Caractéristiques • Démo • Remise en contexte client avec diagramme • Conclusion

  5. Les nominés sont… • WCF • OData • WCF Data Services • WCF RIA Services • Il n’y aura pas 1 seul gagnant. Tout dépend du contexte de déploiement et d’utilisation de votre application.

  6. 1. WCF • Caractéristiques • Exposition de services métier au sens large (web services) • Choix des protocoles et supports de communication (tcp binaire, http, MSMQ, mode sécurisé, SOAP, REST…) • Fonctionnalités plus évoluées (Duplex channel, sécurité,…) • Choix de l’hébergement (exe, Service, IIS) • … • Accès aux données: • Ecriture manuelle des méthodes d’accès et de manipulation des données (=métier)

  7. Les démos Toutes les démos se basent sur la même : • source de données (Data): Base Northwind dans Sql Server • couche d’accès aux données (DAL) : Entity Framework : table Customer

  8. WCF : Découplage entre le service et sa publication IIS, .exe, service Windows Customers ICustomers Get() Create() Update Delete() .config EndPointsdefinitions http tcpbinary MSMQ …

  9. Démo Accès aux données distantes à travers WCF

  10. 2. WCF dans le contexte de l’accès aux données • Avantages • Maitrise complète des services et données exposées et de la forme sous laquelle on les expose • Inconvénients • On écrit (et on maintient) tous les services manuellement • Pas adapté pour de l’accès générique à des données • Convient mieux à des services métiers, dont les cas d’utilisation sont plus prédictibles

  11. 2. OData • Caractéristiques • Exposition de données à travers des URI http REST sous la forme de flux Atom ou JSON • Accessible par des clients hétérogènes (.Net ou pas) • SDK clients (http://www.odata.org) • Filtrage à la source • Méthodes CRUD

  12. Démo Accès à des données en OData en http REST avec mon navigateur préféré

  13. 2. OData • Avantages • Filtrage à la source • Interopérabilité • SDK et librairies clientes (http://www.odata.org) • OData : de plus en plus d’applications publient leurs données en OData (SQL Azure, Sharepoint, …) (=> Migration des données sous SQL Azure =Accès natif en OData en 0 ligne de code !)

  14. 3. WCF Data Services • WCF Data Services est une implémentation de OData pour .Net • Génération automatique des méthodes d’accès et de manipulation des données

  15. Démo Accès aux données distantes avec WCF Data Services

  16. 3. WCF Data Services • Avantages • Avantages de OData • Génération automatique des méthodes d’accès et de manipulation des données • Accélérateurs pour .Net côté client et serveur avec WCF Data Services

  17. Avec WCF Data Services Data DAL Génération des méthodes d’accès aux données WCF Data Services http REST LAN, WAN, … SDKs clients Proxy + LINQ Proxy + LINQ Proxy + LINQ WP7 Silverlight .Net Html 5, Objective-C, Java, …

  18. 4. WCF RIA Services • Technologie permettant de simplifier et d’accélérer le développement de l’accès aux données par un client Silverlight • Répondre à ce besoin principal : création d’applications RIA d’entreprise avec une architecture n-tiers • Scénario très vertical

  19. Démo 5 min pour vous convaincre de la productivité de WCF RIA Services !

  20. WCF RIA Services et Silverlight Data DAL WCF RIA Services Génération des méthodes d’accès aux données Contrôles des droits d’accès aux méthodes RIA Specific (http SOAP bin) OData (*) (http REST) SOAP (http) JSON (http REST) LAN, WAN, … • Proxy • LINQ • Masquage comm. client/serveur • Validation saisie • Expérience 1-tiers • Contrôles de haut niveau Html 5 WP7 Silverlight .Net

  21. Démo Ouverture de WCF RIA Services via endpointOData

  22. WCF RIA Services et OData Data DAL WCF RIA Services Génération des méthodes d’accès aux données Contrôles des droits d’accès aux méthodes RIA Specific (http SOAP bin) OData (*) (http REST) SOAP (http) JSON (http REST) LAN, WAN, … Proxy LINQ CUD Proxy LINQ CUD Proxy LINQ CUD Html 5 WP7 Silverlight .Net

  23. Démo Ouverture de WCF RIA Services via endpoint SOAP

  24. WCF RIA Services et SOAP Data DAL WCF RIA Services Génération des méthodes d’accès aux données Contrôles des droits d’accès aux méthodes RIA Specific (http SOAP bin) OData (*) (http REST) SOAP (http) JSON (http REST) LAN, WAN, … Proxy CRUD LINQ Proxy CRUD LINQ Html 5 WP7 Silverlight .Net

  25. Démo Ouverture de WCF RIA Services via endpoint JSON

  26. Avec WCF RIA Services Data DAL WCF RIA Services Génération des méthodes d’accès aux données Contrôles des droits d’accès aux méthodes RIA Specific (http SOAP bin) OData (*) (http REST) SOAP (http) JSON (http REST) LAN, WAN, … CRUD Proxy LINQ CRUD CRUD Proxy LINQ Html 5 WP7 Silverlight .Net

  27. 4. WCF RIA Services • Avantages • Accélérateur pour Silverlight surtout si l’on se base sur les technos par défaut (Entity) • Permet de s’ouvrir à OData (*), SOAP et JSON pour couvrir d’autres plateformes clientes • Inconvénients • Surtout intéressant pour Silverlight • (*) EndPointOdata ne supporte pas les opérations CUD ni filtrage à la source

  28. Apports fonctionnels côté client/serveur

  29. Conclusion • Si vous avez besoin d’exposer des données, il existe 2 frameworks intéressants : • WCF Data Services • WCF RIA Services • Il n’y a pas de réponse unique, posez vous les bonnes questions et étudiez les limitations de chacun • WCF est le socle commun des 2 et reste intéressant à utiliser dans certains scénarios (exposition de services métier)

  30. Merci et à bientôt ! Blogs: David : http://blogs.msdn.com/davrous Stéphanie : http://blogs.msdn.com/stephe

  31. Restons en contact groupe LinkedIn: Forum des Architectures Applicatives Microsoft http://bit.ly/archiappms Ce forum regroupe des architectes en informatique qui ont des choix de technologies à faire dans les projets pour lesquels ils travaillent. L’architecte applicatif, en situation de projet, travaille typiquement aux côtés de la direction de projet pour choisir et assumer des choix techniques en fonction des contraintes du projet (fonctionnalités, délais, ressources). Pour effectuer ces choix à bon escient, il doit connaître ce que le marché offre en termes de technologies. Cela peut prend typiquement deux formes : veille technologique continue, recherches dans le cadre du projet. L’architecte applicatif a aussi pour rôle de faire le lien entre les équipes de développement et les équipes d’infrastructure et d’exploitation de la future application. Il doit également veiller à ce que ses choix soient bien mis en œuvre pendant le développement. Ce forum, à l’initiative de Microsoft France, a pour but d’aider les architectes applicatifs - à faciliter la connaissance de l’offre de Microsoft pour les projets en entreprise (envoi de liens vers des présentations, documents, webcasts, conférences, …), mais également - à échanger sur des problématique d’architecture ayant un rapport, même partiel, avec la plateforme Microsoft (est-ce que ADFS V2 fonctionne dans un environnement SAML2, comment se passe la réversibilité d’une application développée pour l’informatique en nuage, quelles sont les implications d’un déploiement sur une ferme Web, …). Cet espace est le vôtre, faites le vivre, nous sommes aussi et surtout là pour vous lire.

More Related