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

Struts 1 Java Discussion :

Application multi utilisateurs avec struts


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 16
    Par défaut Application multi utilisateurs avec struts
    Bonjour à tous,

    Voila j'ai besoin de votre aide sur un projet que je doit terminer pour trés bientot...
    C'est une application web utilisant le framework struts. J'ai un action qui réalise un long traitement. Et j'aimerais qu'il n'y ai qu'une seule personne a la fois qui puisse lancer le traitement. Si un autre utilisateur loggué veut lancer le traitement, l'application doit être capable de lui signaler qu'il y a déjà une execution de cette même action en cours, et que sa demande a été placé en file d'attente. Elle sera traité automatiquement par la suite.

    Je ne sais pas trop comment implémenter ça.
    Je pense qu'il s'agit d'exclusion mutuelle. J'ai pensé à créer un thread pour chaque demande sur le traitement en utilisant un synchronized devant la méthode qui effectue le long traitement dont je vous parle. Il faudrai une file d'attente de ces threads et un autre objet qui lui traiterait les demandes dans la file.

    Si vous avez des idées je suis prenneur.
    Si j'ai oublié de mentionner des informations importantes, n'hésitez pas à me demander.

    Merci d'avance.

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    une queue avec les demandes, un thread qui traite les demandes. Attention cependant à limiter la taille de ta queue. Sinon tu risque de mettre tes users en attente pendant des semaines

  3. #3
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 16
    Par défaut
    Citation Envoyé par tchize_ Voir le message
    une queue avec les demandes, un thread qui traite les demandes. Attention cependant à limiter la taille de ta queue. Sinon tu risque de mettre tes users en attente pendant des semaines
    Bonsoir, merci de ta réponse.

    Si je comprend bien, il faudrait que je lance le thread qui traite les demande lors du lancement de l'application web (en surchargeant la méthode ini() de ActionServlet) , ainsi ce thread tournerait en permanence afin de traiter les demandes.
    Comment faire pour que ce thread soit au courant des nouvelles demandes?
    Et comment remonter les informations a l'utilisateur?
    Quand tu parle de queue, parle tu d'un sémaphore?

    Merci pour vos idées

  4. #4
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Citation Envoyé par florette Voir le message
    Si je comprend bien, il faudrait que je lance le thread qui traite les demande lors du lancement de l'application web (en surchargeant la méthode ini() de ActionServlet) , ainsi ce thread tournerait en permanence afin de traiter les demandes.
    par exemple. Mais il serait plus propre de lancer le Thread lors de la première demande et de l'arrêter quand la queue est vide. Car si c'est une opération demandée 3 fois par semaine sur ta webapp, y a pas de raison que le thread reste en mémoire le reste du temps. tu peux aussi t"orienter vers un framework, comme Quartz, qui permet de faire traiter des demandes à des moment précis, et gérer des listes de tâches à faire.


    Comment faire pour que ce thread soit au courant des nouvelles demandes?
    Le thread lit la queue, il prend le premier élément de la queue, le traite, stocke le résultat quelque part, prend la tache suivante, etc.


    Et comment remonter les informations a l'utilisateur?
    On ne pousse pas des informations vers l'utilisateur dans une page web. C'est à lui de venir voir régulièrement où en est sa demande et le résultat éventuel.

    Quand tu parle de queue, parle tu d'un sémaphore?
    Non, d'une liste de tâches

  5. #5
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 16
    Par défaut
    Merci pour ces indications!
    Je vais tester et je reviendrais vous dire si c'est bon

    Merci encore

Discussions similaires

  1. Application multi-utilisateur + lock
    Par Ruddy dans le forum ASP.NET
    Réponses: 9
    Dernier message: 17/12/2007, 11h22
  2. application jboss jbpm avec struts
    Par paolo2002 dans le forum Wildfly/JBoss
    Réponses: 3
    Dernier message: 03/07/2007, 00h42
  3. [ASP.net & VB.net] Application multi-utilisateur
    Par miya dans le forum ASP.NET
    Réponses: 4
    Dernier message: 03/04/2007, 16h48
  4. [sql server 2000] application multi utilisateur
    Par miya dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 02/04/2007, 20h43
  5. Accés multi utilisateurs avec fstab
    Par Sun3clipse dans le forum Administration système
    Réponses: 2
    Dernier message: 26/08/2004, 15h49

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