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

Réseau/Web Python Discussion :

Reverse-Proxy, TimeOut et Intégrité des données (WSDL)


Sujet :

Réseau/Web Python

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 99
    Points : 303
    Points
    303
    Par défaut Reverse-Proxy, TimeOut et Intégrité des données (WSDL)
    Bonjour à tous,

    Je développe actuellement une application web qui fait intervenir en bout de chaîne un webservice exposé en WSDL et que je consomme par PySimpleSOAP. Il est plus que fréquent que mon serveur utilisant PySimpleSOAP échoue avec un timeout lors d'opérations SOAP. Le webservice met effectivement périodiquement plusieurs dizaines de secondes à répondre, et mon client SOAP dit donc "merde, j'ai autre chose à faire". Néanmoins, il apparaît que le timeout n'a pas empêché les données d'être transmises au webservice.

    J'ai donc plusieurs questions:
    • existe-t-il, lors d'un timeout, au niveau des libs python (urllib, httplib2, pycurl) ou du protocol HTTP un moyen de savoir si le serveur à bien reçu les données mais qu'il met juste dix plombes à dire "ok" ? Je n'ai pas vraiment de moyen de déduire a posteriori la bonne réception de données sans faire intervenir plusieurs autres requêtes SOAP (pouvant toutes échouer) + un diff des données.
    • quelles stratégies mettez-vous en place pour gérer gracieusement les timeouts ? Dois-je rallonger le délai pour donner plus de chances au webservice de me répondre ? Dois-je juste échouer et dire à l'utilisateur que sa demande a raté mais que peut-être la modification a été prise en compte?


    Dans la mesure où mes accès en SOAP sont exécutés dans des processus séparés, cela ne me dérange pas de rallonger le timeout, encore faut-il que cela soit efficace et que je fasse patienter l'utilisateur gentillement. Quelles sont vos expériences?

    Merci pour votre éclairage!
    MangoBango

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Citation Envoyé par mangobango Voir le message
    [*]existe-t-il, lors d'un timeout, au niveau des libs python (urllib, httplib2, pycurl) ou du protocol HTTP un moyen de savoir si le serveur à bien reçu les données mais qu'il met juste dix plombes à dire "ok" ? Je n'ai pas vraiment de moyen de déduire a posteriori la bonne réception de données sans faire intervenir plusieurs autres requêtes SOAP (pouvant toutes échouer) + un diff des données.
    Le protocole HTTP est "stateless".
    C'est donc à l'utilisateur de gérer les reprises sur erreurs de façon ad hoc.

    WSDL est à la base "stateless" mais vous avez des implémentations qui permettent d'être "statefull" mais sauf à utiliser un WS de type ReST, une bonne partie du boulot est à faire côté "serveur" (pour se rappeler que..) et non seulement côté "client" (gestion d'un identifiant de connexion permettant de restorer côté serveur l'état de la connexion).
    Dans tout les cas, c'est une histoire de protocole et non de langage de programmation: Python - le langage - ne peut rien pour vous.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 99
    Points : 303
    Points
    303
    Par défaut
    Bonsoir

    Merci pour votre réponse. Elle confirme ce que je soupçonnais. Je vais tenter en rallongeant le timeout, c'est tout ce qui me vient à l'esprit pour l'instant, et qui n'implique pas un trop gros chantier.

    MangoBango

Discussions similaires

  1. Intégrité des données liées
    Par cbleas dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 20/07/2008, 16h57
  2. [MySQL] Intégrité des données
    Par white_tiger dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 21/04/2007, 03h16
  3. [N-Tier] Multi-couches et intégrité des données
    Par alexc_fr dans le forum Autres
    Réponses: 6
    Dernier message: 04/04/2007, 16h04
  4. Réponses: 4
    Dernier message: 09/01/2007, 15h20
  5. [OLAP]verifier l'intégrité des données
    Par crazy dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 13/07/2006, 12h30

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