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

Algorithmes et structures de données Discussion :

Gestion d'une file d'attente


Sujet :

Algorithmes et structures de données

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    196
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 196
    Points : 94
    Points
    94
    Par défaut Gestion d'une file d'attente
    bonjour,
    J'ai un grand dilem sur un choix de méthode:
    je reçoit via un socket des informations (des lignes de texte) que je doit traiter. Je dois dans un premier temps les découper, puis les insérer dans une base de donnée et enfin calculer des statistiques dessus. le problème est la volumétrie qui peut être de l'ordre 1.000.000 de ligne par 24h (soit environ 700 lignes secondes). le soucis c'est que si les traitements deviennent trop long par moment (200-300ms par exemple), il ne faut pas que le system lache (crash, perte de ligne....).

    La question que je me pose est de savoir si il faut mieux créer un thread par ligne entrante (l'étapte la plus urgente est l'insertion de la ligne découpée dans la base de données, les stats peuvent attendre 2 ou 3 minutes), ou bien mettre un seul thread qui bosse dès qu'une file d'attente de ligne n'est pas vide (et donc stocker les lignes en FIFO dans leur ordre d'arrivée).

    Dans un cas, je risque de me retrouver avec un paquet de thread qui tournent en même temps, dans l'autre, une file d'attente qui risque de devenir bien importante et donc des traitements retardés... sachant qu'il ne faut pas, dans la mesure du possible, mettre 3 jours à inserer la ligne.

    A voter avis, que dois-je choisir...
    Merci

  2. #2
    Modérateur
    Avatar de gangsoleil
    Homme Profil pro
    Manager / Cyber Sécurité
    Inscrit en
    Mai 2004
    Messages
    10 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Manager / Cyber Sécurité

    Informations forums :
    Inscription : Mai 2004
    Messages : 10 150
    Points : 28 130
    Points
    28 130
    Par défaut
    Bonjour,

    Quels sont les problèmes liés au fait d'avoir plusieurs threads qui tournent en même temps, si ce n'est qu'il y en a qui risquent de ne rien faire ?

    A priori aucun, donc je prendrai cette solution.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    196
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 196
    Points : 94
    Points
    94
    Par défaut
    merci,
    je vais faire ça mais l'idée d'avoir 500 threads en même temps me faisait peur.

    encore merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. gestion d'une file d'attente avec report 10G
    Par sithe dans le forum Reports
    Réponses: 0
    Dernier message: 15/06/2011, 02h49
  2. Insertion dans une file d'attente MQSERIS
    Par a_karim_fr dans le forum z/OS
    Réponses: 3
    Dernier message: 13/10/2009, 19h14
  3. gerer une file d'attente de traitement ?
    Par dremos dans le forum Débuter avec Java
    Réponses: 2
    Dernier message: 31/12/2008, 10h45
  4. gestion de la file d'attente
    Par jbarre dans le forum AIX
    Réponses: 2
    Dernier message: 06/11/2008, 11h59
  5. [Tableaux] créer une file d'attente en php
    Par gaetan.tranvouez dans le forum Langage
    Réponses: 12
    Dernier message: 01/06/2006, 19h49

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