IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Services Web Discussion :

Bonne pratique de WCF sans baisse de performance ?


Sujet :

Services Web

  1. #1
    Candidat au Club
    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Août 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Auditeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2013
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Bonne pratique de WCF sans baisse de performance ?
    Bonsoir j'hésite entre deux façons de faire:
    DAL>BLL>WCF>Client (asp.net,wpf,xamarin)
    DAL>BLL>asp.net+services>Client (wpf, xamarin)

    Je préfère voir mon application asp.net comme un client cependant j'ai peur des performances en baisse. De plus suivant les projets je n'aurais pas systématiquement un client asp.net à faire.


    Quelle est la bonne pratique ?

    Merci.

  2. #2
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Points : 9 743
    Points
    9 743
    Billets dans le blog
    3
    Par défaut
    Il n'y a malheureusement pas une seule bonne pratique, en architecture tout dépend d'un certain nombre de critères (resources disponibles (budget, temps, hommes, hardware...), code jetable, code pour long terme, etc.). Cette liste est non exhaustive loin de là.

    Donc difficile de te répondre sans avoir la moindre idée de toutes ces variables

    Concernant les performances, effectivement rajouter une couche logicielle peut induire une baisse. Mais bon clairement si ton appli est LoB ou n'est pas temps réel (comme une appli de trading, ou une appli médicale pour monitoring de patient), alors il n'y a aucune contre-indication à rajouter cette couche. Si tu es dans le cas d'un appli temps réel, alors il faut être prudent et réaliser des tests en amont, puis voir dans quelle mesure il est possible d'optimiser la couche WCF.

    Ensuite, dans tous les cas de figure, rien ne t'empêche de rajouter cette couche WCF pour un certain type d'applications, et pas pour d'autres. Ainsi ton appli ASP.NET pourra continuer à exister sans l'utiliser, et une future application Console devra obligatoirement utiliser cette couche WCF. Cela est à définir dans ta gouvernance d'architecture.

    En espérant que cela t'éclaire un peu plus.
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

  3. #3
    Candidat au Club
    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Août 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Auditeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2013
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Merci d'avoir pris le temps de me répondre. Mon application n'est en effet pas temps réel, cependant un site web l'est plus ou moins toujours et il est le plus sujet aux baisses de performances.

    Qui resterait sur un site où les chargements sont longs ?

    Comme tu l'as dis, ce n'est que par des tests que je répondrais exactement à ma question mais je pensais qu'il y avait déjà un consensus à ce sujet dû à la spécificité des applications web qui doivent être très rapides (asp.net).

    Je n'ai pas de préférence à utiliser l'une ou l'autre des méthodes (WCF ou WebAPI), je voulais juste partir sur de bonnes bases pour que plus tard je ne le regrette pas !

  4. #4
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Points : 9 743
    Points
    9 743
    Billets dans le blog
    3
    Par défaut
    Effectivement un site Web doit répondre le plus rapidement possible, loin de moi l'idée de penser le contraire

    Cependant je n'ai personnellement jamais constaté de réel impact avec l'ajout d'une couche WCF, surtout si elle sert juste à transférer des données de la couche business vers le client (sans opération coûteuse).

    Par contre si tu rajoutes des opérations lourdes dans la couche WCF, ou si tu as des appels vers d'autres systèmes, genre base de données, etc, les techniques de caching peuvent être interessantes. WCF offre aussi de la compression, ce qui peut encore être bénéfique...
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

Discussions similaires

  1. Réponses: 0
    Dernier message: 24/09/2011, 10h39
  2. WCF + Linq : bonnes pratiques ?
    Par Arnard dans le forum Windows Communication Foundation
    Réponses: 16
    Dernier message: 02/11/2008, 10h58
  3. bonnes pratiques liées à la performance ?
    Par bouliz dans le forum Général Java
    Réponses: 16
    Dernier message: 24/04/2008, 00h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo