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

Windows Communication Foundation .NET Discussion :

réponse trop grosse.


Sujet :

Windows Communication Foundation .NET

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Août 2009
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 147
    Points : 174
    Points
    174
    Par défaut réponse trop grosse.
    Bonjour, j'ai un web service qui me permet d'accéder à une base de donnée, et je tente de faire un requète avec beaucoup de résultats (un select *), soit environ 4 MB. Et mon service plante.
    Comment dois-je procéder ? Il y a t'il un paramètre du web config que je puisse modifier. Dois-je tronquer ma requète pour la démultiplier?

    merci

  2. #2
    Membre régulier
    Étudiant
    Inscrit en
    Février 2007
    Messages
    202
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 202
    Points : 97
    Points
    97
    Par défaut
    Citation Envoyé par davjan Voir le message
    Bonjour, j'ai un web service qui me permet d'accéder à une base de donnée, et je tente de faire un requète avec beaucoup de résultats (un select *), soit environ 4 MB. Et mon service plante.
    Comment dois-je procéder ? Il y a t'il un paramètre du web config que je puisse modifier. Dois-je tronquer ma requète pour la démultiplier?

    merci
    Tu as une excepetion ? Du style Timeout ?

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Août 2009
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 147
    Points : 174
    Points
    174
    Par défaut
    Non en fait j'ai une erreur CommunicationException:

    Une erreur c'est produite lors de la réception HTTP à
    htttp://serveur/MonService/Service.svc . La raison peut être que le point de terminaison du service n'utilise pas le protocole HTTP. Cela peut également être dû au fait qu'un contexte de demande HTTP a été ignoré par le serveur(peut-être à cause de l'arrêt du service).
    Le service était bien démarré. J'en ai déduis que c'était un problème de taille, car en modifiant ma requète (en ne faisant plus select * mais select* ...where... avec une contrainte qui divisait par cent à peu près le nombre de résultats), je n'ai plus eu l'erreur.

  4. #4
    Membre régulier
    Étudiant
    Inscrit en
    Février 2007
    Messages
    202
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 202
    Points : 97
    Points
    97
    Par défaut
    Regarde par ici : http://www.developpez.net/forums/d10...ocket-timeout/

    Essaye de jouer sur ces parametres :

    maxBufferSize="2147483647"
    maxReceivedMessageSize="2147483647">
    maxDepth="2147483647"
    maxStringContentLength="2147483647"
    maxArrayLength="2147483647"
    maxBytesPerRead="2147483647"
    maxNameTableCharCount="2147483647"

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Août 2009
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 147
    Points : 174
    Points
    174
    Par défaut
    Merci pour la réponse.
    En fait j'utiliste un WsHttpBinding donc je n'ai accès qu'à MaxReceivedMessageSize et MaxBufferPoolSize, que j'ai fixé respectivement à 100000000 et 54000000. Mais j'ai toujours l'erreur.

  6. #6
    Membre régulier
    Étudiant
    Inscrit en
    Février 2007
    Messages
    202
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 202
    Points : 97
    Points
    97
    Par défaut
    C'était quoi ?

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Août 2009
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 147
    Points : 174
    Points
    174
    Par défaut
    Ben la même
    Une erreur c'est produite lors de la réception HTTP à
    htttp://serveur/MonService/Service.svc . La raison peut être que le point de terminaison du service n'utilise pas le protocole HTTP. Cela peut également être dû au fait qu'un contexte de demande HTTP a été ignoré par le serveur(peut-être à cause de l'arrêt du service).
    Il m'ajoute aussi que pour plus d'info je peux consulter les journaux du serveur.IL veut parler de l'obersvateut d'évenements?Car rien n'y apparait

    Le résultat est stocké dans une list avec environ 16000 éléments est-ce que c'est celà qui pourrait poser un pb?

    merci pour toute aides

  8. #8
    Membre habitué
    Profil pro
    Inscrit en
    Août 2009
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 147
    Points : 174
    Points
    174
    Par défaut
    Alors je confirme que ca a bient l'air d'être un pb de taille, car quand je limite ma requète avec LIMIT 0,1000 pour prendre les 1000 premiers éléments je n'ai plus d'exception.
    C'est le passage de 1000 à 16000 qui plante.Ou alors certaines données suivantes peuvent être corrompues...

  9. #9
    Futur Membre du Club
    Inscrit en
    Juin 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 8
    Points : 7
    Points
    7
    Par défaut
    j'ai rencontré se problème avec nettcpbinding je renvoyais de collections trop grandes.

    Il me semble que j'ai réglé mon problème un jouant avec XmlDictionnaryReaderQuotas ou un truc dans le genre.

    Je vais fouiller dans mes vieilles sources pour te mettre un morceau de code si je trouve

  10. #10
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Points : 8 080
    Points
    8 080
    Par défaut
    Ne pas hesiter a passer par un encoding binaire si possible qui est beaucoup moins consommateur. Ou utiliser du Mtom.

  11. #11
    Membre habitué
    Profil pro
    Inscrit en
    Août 2009
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 147
    Points : 174
    Points
    174
    Par défaut
    merci beaucoup, je vais regarder ca.

Discussions similaires

  1. Base de données trop grosse pour sql
    Par creale10 dans le forum Oracle
    Réponses: 2
    Dernier message: 08/12/2006, 10h25
  2. temp de réponse trop long
    Par maxidoove dans le forum Langage SQL
    Réponses: 6
    Dernier message: 27/10/2005, 18h24
  3. Taille Jar trop grosse
    Par lil_jam63 dans le forum Java ME
    Réponses: 7
    Dernier message: 25/11/2004, 14h19
  4. [Dump][PHPmyAdmin] table trop grosse???
    Par Slein dans le forum Administration
    Réponses: 3
    Dernier message: 03/06/2004, 23h04

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