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

ASP.NET Discussion :

Gridview et lenteur


Sujet :

ASP.NET

  1. #21
    Expert confirmé
    Avatar de Nicolas Esprit
    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Février 2010
    Messages
    1 467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 1 467
    Points : 4 066
    Points
    4 066
    Par défaut
    Après tu peux toujours mettre en place la compression de l'html en sortie, voire la compression du viewstate. Seulement ça augmente la charge CPU de ton serveur.

  2. #22
    Membre confirmé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Points : 637
    Points
    637
    Par défaut
    La compression HTML au niveau de IIS je suppose ?
    Par contre peux tu m'en dire plus sur la compression du Viewstate ?
    MCTS Microsoft.
    La conception : Prendre le temps pour gagner du temps.

  3. #23
    Expert confirmé
    Avatar de Nicolas Esprit
    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Février 2010
    Messages
    1 467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 1 467
    Points : 4 066
    Points
    4 066
    Par défaut
    Bonjour,

    Tu peux en effet mettre en place la compression au niveau de IIS (au passage si tu utilises la version 7 je te recommande la lecture de cette article).

    Tu peux également appliquer un Filter au niveau de la réponse HTTP. Donc à mettre en place au niveau du Global.asax ou au niveau d'un HttpModule que tu créés. Ceci est un exemple pour illustrer simplement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    HttpContext context = HttpContext.Current; 
    context.Response.Filter = new GZipStream(context.Response.Filter, CompressionMode.Compress);
    HttpContext.Current.Response.AppendHeader("Content-encoding", "gzip");
    HttpContext.Current.Response.Cache.VaryByHeaders["Accept-encoding"] = true;
    Plus généralement au niveau de l'amélioration des performances pour une application ASP.NET j'ai commencé une série de billets pour expliquer (une façon parmi d'autres de) :


    Après ça ne reste que des exemples qui ne seront pas forcément applicables dans tous les contextes. Regarde en priorité les fonctions de compression qu'offrent IIS
    Une fois la série plus avancée j'en ferais un article que je publierais sur Developpez.

    Concernant l'optimisation générale d'une application Web (ce qui dépasse le cadre de ta GridView) tu peux aussi consulter les recommandations Yahoo et celles de Google. Idéalement pour vérifier et évaluer les points à améliorer sur tes pages je te recommande d'utiliser YSlow de Yahoo et Page Speed de Google. Il existe d'autres outils de ce genre bien-sur.

    Pour revenir à ta question concernant la compression du ViewState. Déjà, à titre informatif, il existe un add-on Firefox qui te donne la taille de ton ViewState pour une page aspx.
    Généralement il est conseillé des désactiver le ViewState de tous les contrôles ou pages qui n'en ont pas besoin. Moins y en a, mieux c'est.
    Concernant la mise en place de cette compression, tu peux regarder sur Google, il existe de nombreux articles/billet mettant en oeuvre cela (comme par exemple ici).

    Enfin, si tu actives la compression au niveau de IIS, certains développeurs vont te dire : "c'est stupide de mettre en place la compression du ViewState alors que IIS compresse déjà toute la page, c'est du travail en double". Je répondrais oui et non (ce n'est pas non plus une généralité et dépend de certains paramètres). Il est bon de savoir que lorsque la compression IIS est activée, le client (le browser) reçoit bien des données compressées dont le ViewState. MAIS lors qu'il y a un POST du browser vers IIS, le browser n'envoie pas le ViewState compressé. Or les connections ont toujours un débit UP bien inférieur au débit DOWN. Dans ce cas précis il est utile de mettre en place la compression du ViewState en plus de celle effectuée par IIS.

    Sinon pour optimiser une page il faut prendre en compte plusieurs paramètres, notamment le coup CPU niveau serveur, l'impact sur le temps de réponse, etc. Selon le cas, la configuration, les contraintes, on activera ou non la compression.

    En espérant ne pas être trop sorti du cadre de ta réponse et t'avoir éclairé sur le sujet.

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. [LG]Lenteur de parcours de fichier
    Par YéTeeh dans le forum Langage
    Réponses: 9
    Dernier message: 26/11/2003, 23h57
  2. [Débutant] Lenteur avec TComPort
    Par PhDt76 dans le forum C++Builder
    Réponses: 22
    Dernier message: 27/09/2003, 22h43
  3. lenteur d'affichage de requete dans un DBGrid
    Par nico27 dans le forum InterBase
    Réponses: 9
    Dernier message: 23/06/2003, 14h54
  4. [Sybase]probleme de lenteur
    Par MASSAKA dans le forum Sybase
    Réponses: 3
    Dernier message: 19/03/2003, 23h58
  5. Lenteur d'execution de Jbuilder 6
    Par Tsimplice dans le forum JBuilder
    Réponses: 6
    Dernier message: 18/12/2002, 15h41

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