Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 3 sur 3
  1. #1
    Membre régulier
    Inscrit en
    avril 2004
    Messages
    212
    Détails du profil
    Informations forums :
    Inscription : avril 2004
    Messages : 212
    Points : 81
    Points
    81

    Par défaut ajout dans une queue et déclenchement de service

    Bonjour,

    J'ai fait un service windows qui vient régulièrement (timer) requêter en base les données dans une table pour voir s'il n'a pas des demandes à traiter (nouveaux enregistrements). Jusque là pas de soucis.

    En regardant mes logs. Je constate que plus de 90% du temps, il se lance pour rien. Aussi je voudrais savoir s'il n'est pas possible de réveiller le service suite à un insert dans la base. Ce qui serait plus "élégant". Une sorte de trigger. Avez vous des idées ou des pistes ? D'avance merci.

    Au niveau des contraintes, le service gère les "demandes" triées selon leur niveau de priorité et leur ancienneté. Les demandes émanent d'une appli web. Elles peuvent arriver en grande quantité genre plusieurs centaines par minutes. Après le passage par la base n'est pas une obligation.

    C'est une sorte de gestion de file d'attente via la BD où sont consignés les informations pour le traitement. Par contre je dois informer l'utilisateur de l'état de sa demande. Aujourd'hui c'est dans la base mais je peux m'en affranchir en passant par des étiquettes WorkFlow.

    En gros j'ai un état de la demande (attente, en cours, terminée...) à gérer et 3 ID transmettre pour pouvoir faire le traitement demandés.

  2. #2
    Invité
    Invité(e)

    Par défaut

    Citation Envoyé par antrax2013 Voir le message
    En regardant mes logs. Je constate que plus de 90% du temps, il se lance pour rien. Aussi je voudrais savoir s'il n'est pas possible de réveiller le service suite à un insert dans la base. Ce qui serait plus "élégant". Une sorte de trigger. Avez vous des idées ou des pistes ? D'avance merci.
    La question est de savoir, est-ce que durant les 90% du temps où le service ne fout rien, tu as des problèmes de performance ou de mémoire ? Si non, bah pourquoi vouloir changer vu qu'il n'y a aucun problème.

    Si tu veux seulement une solution vraiment élégante sans timer, alors orientes-toi vers les services. En gros ton service windows héberge un service WCF. Ton application Web informe ton service à chaque qu'elle a inséré une demande avec succès en lui fournissant l'ID de la demande.

  3. #3
    Membre régulier
    Inscrit en
    avril 2004
    Messages
    212
    Détails du profil
    Informations forums :
    Inscription : avril 2004
    Messages : 212
    Points : 81
    Points
    81

    Par défaut

    Citation Envoyé par h2s84 Voir le message
    La question est de savoir, est-ce que durant les 90% du temps où le service ne fout rien, tu as des problèmes de performance ou de mémoire ? Si non, bah pourquoi vouloir changer vu qu'il n'y a aucun problème.
    Effectivement c'est un de nos soucis. Bien que le service ne soit pas très groumant quand il ne fait rien. Mais la multiplication des services de ce type commence à se faire sentir.

    Citation Envoyé par h2s84 Voir le message
    Si tu veux seulement une solution vraiment élégante sans timer, alors orientes-toi vers les services. En gros ton service windows héberge un service WCF. Ton application Web informe ton service à chaque qu'elle a inséré une demande avec succès en lui fournissant l'ID de la demande.
    Je vais regarder à ca. Merci de l'info.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •