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 :

Utiliser les threads dans application Struts


Sujet :

Struts 1 Java

  1. #1
    Membre averti
    Inscrit en
    Juin 2004
    Messages
    21
    D�tails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 21
    Par d�faut Utiliser les threads dans application Struts
    Bonjour,

    J'ai une application qui tourne sous websph�re, j'utilise le framework Struts.
    Cette application doit lancer plusieurs traitement long et certains doivent s'�x�cuter en parral�le.

    J'ai donc r�fl�chi � une solution :

    d�j� les threads sont d�conseill�s dans les conteneurs web d'apres la spec J2EE, si j'utilise les threads dans webspheres Est ce que c'est bon puisque c'est un serveur d'application ?

    Voici ce que je compte faire :

    - mon appli se divise en trois couche,
    - les traitements sont tous lanc�s � travers des threads appel� "unit� de traitement" : ceux ci peuvent �tre lanc�s en parall�le et sont plus ou moins long
    - le s�quencement est defini dans une autre classe "sequenceur" qui g�rent l'ordonancement des "unit�s de traitement" : le sequencement est lui meme lanc� dans un thread

    Tout ces elements se trouve dans la couche application.

    Depuis la couche presentation (struts) j'apelle une classe situ�e dans la couche application qui se charge de lancer le thread s�quencement. la main est ensuite rapidement retourn�e � l'utilisateur

    le "sequenceur" tourne en tache de fond et lance les "unit�s de traitment".


    Voila comment je compte faire l'appli.

    Qu'en pensez vous

    Merci d'avance

  2. #2
    Membre �m�rite
    Avatar de yolepro
    Profil pro
    Architecte de syst�me d'information
    Inscrit en
    Mai 2002
    Messages
    918
    D�tails du profil
    Informations personnelles :
    �ge : 47
    Localisation : France

    Informations professionnelles :
    Activit� : Architecte de syst�me d'information

    Informations forums :
    Inscription : Mai 2002
    Messages : 918
    Par d�faut
    Bonjour,

    Effectivement les Threads sont deconseill�s par la specification J2EE, d'ailleurs si tu fais des acces a un container via ce thread sous WAS attends toi a avoir des avertissements au niveau des logs.

    Maintenant deconseill� ne veut pas dire interdit. J'ai eu l'occasion de travailler sur des applications qui l'utilisaient pour faire de longs traitements asynchrones (traitement de nuit ou hebdomadaire, envoie de mail, ....). Dans ce cadre, c'est tout � fait justifi�.
    Il faut que tu veilles � ce que le thread soit bien d�limit� � une action en particulier car les probl�mes d'effondrement de perf voir de crash serveur viennent souvent d'une mauvaise gestion des threads.

  3. #3
    Membre averti
    Inscrit en
    Juin 2004
    Messages
    21
    D�tails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 21
    Par d�faut
    si tu fais des acces a un container via ce thread sous WAS attends toi a avoir des avertissements au niveau des logs
    En fait l� je comprend pas, Websphere est un server d'application, donc si les thread tourne dans ce serveur dans la couche appli c'est OK ?

  4. #4
    Membre averti
    Inscrit en
    Juin 2004
    Messages
    21
    D�tails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 21
    Par d�faut
    je voulais aussi ajouter que en mode administration, l'application est mono utilisateur, les traitements longs ne sont lanc�s que par un super utilisateur.

    Les threads sont donc possible car je n'ai pas a gerer les threads dans un environeement multi utilisateur, et je n'aurais pas de pb de goulot d'�tranglement d�e au synchronisation

    merci

  5. #5
    Membre �m�rite
    Avatar de yolepro
    Profil pro
    Architecte de syst�me d'information
    Inscrit en
    Mai 2002
    Messages
    918
    D�tails du profil
    Informations personnelles :
    �ge : 47
    Localisation : France

    Informations professionnelles :
    Activit� : Architecte de syst�me d'information

    Informations forums :
    Inscription : Mai 2002
    Messages : 918
    Par d�faut
    Cela peut d�pendre des serveurs d'application d'apr�s ce que j'ai lu. Certain peuvent t'empecher de faire tourner des Threads qui accederait directement a la couche metier de ton application.

    Mais ca n'est pas le cas de WAS d'apres mon experience. Maintenant, si comme tu le dis, le p�rimetre est limit� � une personne et que WAS te permet de faire des Threads pour acceder a la couche metier, je ne vois pas de probl�me.

  6. #6
    Membre averti
    Inscrit en
    D�cembre 2004
    Messages
    18
    D�tails du profil
    Informations forums :
    Inscription : D�cembre 2004
    Messages : 18
    Par d�faut
    Je ne sais pas si ca s'appliquerait a ton cas mais dans le mien, on avait des composants a la norme JCA qui etaient multi-thread�s et dans ce cas plutot que de lancer les threads manuellement on disposait d'un objet javax.resource.spi.work.WorkManager a qui on "demandait" de lancer les threads.

    Ainsi c'etait le serveur d'application qui se chargeait de gerer les threads.

  7. #7
    Membre �m�rite
    Avatar de yolepro
    Profil pro
    Architecte de syst�me d'information
    Inscrit en
    Mai 2002
    Messages
    918
    D�tails du profil
    Informations personnelles :
    �ge : 47
    Localisation : France

    Informations professionnelles :
    Activit� : Architecte de syst�me d'information

    Informations forums :
    Inscription : Mai 2002
    Messages : 918
    Par d�faut
    Je suis ArithmeticException sur sa lanc� en te donnant un article int�ressant sur le sujet :

    http://www.devx.com/Java/Article/28815

  8. #8
    Membre averti
    Inscrit en
    Juin 2004
    Messages
    21
    D�tails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 21
    Par d�faut
    Ok merci

    je vais creuser dans ce sens et voir comment utiliser l'objet javax.resource.spi.work.WorkManager

Discussions similaires

  1. Utilisation des threads dans une application Perl/Tk
    Par Kroui dans le forum Interfaces Graphiques
    R�ponses: 2
    Dernier message: 04/07/2011, 21h00
  2. Comment utiliser les thread dans ce cas ?
    Par ketchupi dans le forum Threads & Processus
    R�ponses: 5
    Dernier message: 03/06/2011, 01h56
  3. demande d'information sur utilisation des threads dans les sockets
    Par yacin87 dans le forum Entr�e/Sortie
    R�ponses: 1
    Dernier message: 10/04/2010, 10h10
  4. comment utiliser les lock dans les threads ?
    Par skad dans le forum G�n�ral Python
    R�ponses: 2
    Dernier message: 15/07/2008, 15h28
  5. les threads dans NSE
    Par LN(a) dans le forum Delphi
    R�ponses: 1
    Dernier message: 01/12/2006, 19h11

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