Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1073 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Javabean/session/expiration

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Javabean/session/expiration

n°403371
alien_nan
Posté le 21-05-2003 à 18:40:16  profilanswer
 

Bonjour à tous,
 
J'ai un javabean qui crée une connexion jdbc à une base oracle, et le scope=session. De cette manière, quelque soit le nombre de requete que fera l'utilisateur, il utilisera la meme connexion, soit une par utilisateur.
 
Le probleme, c que pendant la nuit, on arrete la base (pour la sauvegarder), et on redemmare. Le souci est que comme les timeout des serveurs web sont à -1 pour qu'il n'y ait pas de timeout, la connexion disparait, mais le bean, non.
 
Si je ne me trompe pas, le mecanisme d'un javabean est le suivant : lors de l'appel a jsp:usebean, il y a création d'une instance s'il n'existe pas. Or comme ce dernier existe encore, il ne me recrée pas de connexion. Mais lors de ce fameux test, est ce que le constructeur du bean est chargé ?
 
Car pour pallier mon probleme, je testerai si ma connexion existe ou pas, et le cas echeant, en re créer une.
Ou alors, je pourrai faire expirer mon bean.
 
Si qqu'un pouvait m'aider ... désolé si j'ai manqué de precisions..
 

mood
Publicité
Posté le 21-05-2003 à 18:40:16  profilanswer
 

n°403414
the real m​oins moins
Posté le 21-05-2003 à 19:39:59  profilanswer
 

elle est ou la question là?
 
 
sinon perso je suis pas DU TOUT convaincu que foutre la cnx dans un bean ait un quelconque sens mais bon je peux me tromper :??:
 


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°403424
alien_nan
Posté le 21-05-2003 à 19:49:36  profilanswer
 

ba disons que je voulais avoir des reactions.
J'ai mis la connexion ds le bean pour qu'il y ait propagation de cette connexion au travers de la session utilisateur.
 
Car a chaque page, il y a entre 4 et 8 requetes qui s'effectuent.
Je pense que c plus rapide/efficace de creer une connexion, et des requetes apres, plutot que de creer une connexion a chaquez fois.
 
mais je me suis peut etre trompé ...

n°403433
the real m​oins moins
Posté le 21-05-2003 à 19:54:52  profilanswer
 

utilise un pool de connections plutot


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°403873
senternal
Posté le 22-05-2003 à 10:34:17  profilanswer
 

the real moins moins a écrit :

utilise un pool de connections plutot


 
+1
 
Un pool de conn. est largement plus efficace car nullement besoin de recreer une nouvelle conn. a chq user.  T'imagines, 500 user = 500 conn. jdbc, bonjour les perf...
 
Petite remarque alien_nan, ca te dit qqs le pattern mvc ??

n°403892
El_gringo
Posté le 22-05-2003 à 10:48:24  profilanswer
 

[:blueflag]

n°403967
the real m​oins moins
Posté le 22-05-2003 à 11:32:22  profilanswer
 

t'as tjs pas compris cmoment ça marche les pools de cnx, c ça? [:ddr555]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°403987
El_gringo
Posté le 22-05-2003 à 11:44:45  profilanswer
 

the real moins moins a écrit :

t'as tjs pas compris cmoment ça marche les pools de cnx, c ça? [:ddr555]


 
Tsss... :sarcastic:  
Je suis le roi du pool de connexions. J't'apprends tout ce que tu veux là dessus ! :D

n°404029
alien_nan
Posté le 22-05-2003 à 12:06:41  profilanswer
 

Si , je connais le modele mvc... je fais un peu de dev sous struts (notamment developpement autour de ion, pour ceux qui connaissent)
 
Mais c'est un site dynamique que je realise, et quand il y aura un utilisateur qui se connecte, la page est generée dynamiquement car tout est stocké dans une base de donnée (page du site, actualité ...).
 
Donc il faut que je regarde un peu le pool de connexion.
Il me semble que c un gestionnaire de connexion qui en crée a la demande et qui en libere des que l'utilisateur a finit ?
 

n°404318
El_gringo
Posté le 22-05-2003 à 14:19:33  profilanswer
 

alien_nan a écrit :


Donc il faut que je regarde un peu le pool de connexion.
Il me semble que c un gestionnaire de connexion qui en crée a la demande et qui en libere des que l'utilisateur a finit ?


 
C'est plus que ça: ça gère un ensemble de connexions, tout simplement.
Je n'me lasserai jamais de conseiller celui-là:
http://protomatter.sourceforge.net/1.1.8/index.html
il à le gros avantage d'être implémenté entant que driver JDBC, ce qui fait que sont utilisation se fait pratiquement de la même manière que si on créait une connexion à chaque fois qu'un utilisateur à besoin d'une connexion.
http://protomatter.sourceforge.net/1.1.8/index.html

mood
Publicité
Posté le 22-05-2003 à 14:19:33  profilanswer
 

n°404574
alien_nan
Posté le 22-05-2003 à 16:01:04  profilanswer
 

El_gringo a écrit :


 
C'est plus que ça: ça gère un ensemble de connexions, tout simplement.
Je n'me lasserai jamais de conseiller celui-là:
http://protomatter.sourceforge.net/1.1.8/index.html
il à le gros avantage d'être implémenté entant que driver JDBC, ce qui fait que sont utilisation se fait pratiquement de la même manière que si on créait une connexion à chaque fois qu'un utilisateur à besoin d'une connexion.
http://protomatter.sourceforge.net/1.1.8/index.html


 
Merci pour le lien, je vais regarder.

n°405282
benou
Posté le 23-05-2003 à 00:56:14  profilanswer
 

El_gringo a écrit :


Je n'me lasserai jamais de conseiller celui-là:
http://protomatter.sourceforge.net/1.1.8/index.html


 
tu connais celui là ?
http://sourceforge.net/projects/proxool/


---------------
ma vie, mon oeuvre - HomePlayer
n°405407
El_gringo
Posté le 23-05-2003 à 09:01:41  profilanswer
 


 
J'connaissais pas, non. C'est le même principe que Protomatter (driver JDBC), et ça semble peut être plus clean. Ms j'peux pas essayer : impossible de downloader.

n°405565
senternal
Posté le 23-05-2003 à 10:27:13  profilanswer
 

alien_nan a écrit :

Si , je connais le modele mvc... je fais un peu de dev sous struts (notamment developpement autour de ion, pour ceux qui connaissent)
 
Mais c'est un site dynamique que je realise, et quand il y aura un utilisateur qui se connecte, la page est generée dynamiquement car tout est stocké dans une base de donnée (page du site, actualité ...).
 
Donc il faut que je regarde un peu le pool de connexion.
Il me semble que c un gestionnaire de connexion qui en crée a la demande et qui en libere des que l'utilisateur a finit ?


 
Euh, tu connais mvc et tu utilises un bean de connexion jdbc directement dans une jsp ?  :heink:
Des fois y'a des trucs qui m'echappent... :??:
Rassure moi c'est pour un site perso ?

n°406820
darklord
You're welcome
Posté le 24-05-2003 à 14:31:34  profilanswer
 

alien_nan a écrit :

Si , je connais le modele mvc... je fais un peu de dev sous struts (notamment developpement autour de ion, pour ceux qui connaissent)
 
Mais c'est un site dynamique que je realise, et quand il y aura un utilisateur qui se connecte, la page est generée dynamiquement car tout est stocké dans une base de donnée (page du site, actualité ...).
 
Donc il faut que je regarde un peu le pool de connexion.
Il me semble que c un gestionnaire de connexion qui en crée a la demande et qui en libere des que l'utilisateur a finit ?
 
 


 
Je ne vois pas en quoi ton site dynamique t'empeche d'utiliser MVC. Justement c'est exactement le domaine d'application, non?


---------------
Just because you feel good does not make you right
n°407010
alien_nan
Posté le 25-05-2003 à 12:18:08  profilanswer
 

Je travaille avec Oracle Portal. Je ne sais faire que des jsp avec ce truc (la publication de servlet m'echappe...disons qu'on ne peut pas en faire 'simplement').
 
 
Normalement, je fais des jsp qui contiennent des servlets qui font elle m appel a des javabean ... Je connais mvc (ca fait limite replique de Matrix :D)
 
Qd un utilisateur arrive sur le site, il parcourt des pages qui sont stockées sous forme de CLOB ds une base de données. Donc lorsqu'il arrive, il aura besoin en permanence d'une connexion a la base.
 
Donc avec mon bean, j'arrive a etablir des connexions, mais je n'arrive pas a les fermer car lorsque l'utilisateur quitte IE, je ne connais pas de methode qui me le dise afin que je ferme proprement ma connexion.
 
Donc j'ai pensé (peut etre a tort) que c'etait la solution la plus correcte que je puisse mettre en place.
 
On m'a parlé du pool de connexion, mais j'ai le m probleme qu'avec mon bean : comment lui dire que l'utilisateur a quitté ?
 
 

n°407040
the real m​oins moins
Posté le 25-05-2003 à 13:46:39  profilanswer
 

[:totoz]

n°407151
darklord
You're welcome
Posté le 25-05-2003 à 17:13:55  profilanswer
 

[:serial coder]


---------------
Just because you feel good does not make you right
n°407159
alien_nan
Posté le 25-05-2003 à 17:21:52  profilanswer
 

bon visiblement, mes choix sont pourris...
 
Dans le but d'eviter de refaire les memes erreurs, qqu'un a t il des ref de livres pour les archi web en java ?
 

n°407246
benou
Posté le 25-05-2003 à 20:32:39  profilanswer
 

alien_nan a écrit :

On m'a parlé du pool de connexion, mais j'ai le m probleme qu'avec mon bean : comment lui dire que l'utilisateur a quitté ?


 
un poole de connexion c'est une reserve de connexion qui sont toujours ouvertes. Quand tu en as besoin d'une (affichage d'une page), tu la demandes (elle t'es reservé pendant que tu t'en sers) et quand tu en as plus besoin (fin d'affichage de ta page), tu la rends (elle redevient disponibles).
 
Les connexions sont banalisées : elles ne sont pas associées à un utilisateur, donc tu t'en fous de savoir quand ton utilisateur se déconnecte.
 
Les pool un peu évolués sont en plus capables de s'agrandir et de rétrécir en fonction de l'activité ce qui permet d'optimiser le nombre de connexion BDD ouvertes.


---------------
ma vie, mon oeuvre - HomePlayer
n°407789
alien_nan
Posté le 26-05-2003 à 12:29:11  profilanswer
 

ok, merci pour ces eclairages.
 
Je vais mettre en place le pool de connexion, avec une 20aine de connexions d'ouvertes, vu que c pour un site assez frequenté.
 
 

n°407903
El_gringo
Posté le 26-05-2003 à 14:08:23  profilanswer
 

alien_nan a écrit :

ok, merci pour ces eclairages.
 
Je vais mettre en place le pool de connexion, avec une 20aine de connexions d'ouvertes, vu que c pour un site assez frequenté.


 
Ce genre de trucs, vaut mieux que ça soit paramétrable, pas en dur dans le programme. Lis ça dans un fichier "properties".

n°407928
alien_nan
Posté le 26-05-2003 à 14:26:52  profilanswer
 

El_gringo a écrit :


 
Ce genre de trucs, vaut mieux que ça soit paramétrable, pas en dur dans le programme. Lis ça dans un fichier "properties".


 
Oui, j'y avais pensé. Le bean contenait deja les variables d'environnement lues dans un fichier properties
 
Merci qd m :)

n°536125
Shogun2002
Posté le 10-10-2003 à 14:15:05  profilanswer
 

Comment on définit dans Proxool le timeout ? cad le temps d'inactivité de la connexion afin que le house-keeper la ferme automatiquement ?
 
Il y a maximum-connection-lifetime:  
The maximum amount of time that a connection exists for before it is killed (milliseconds). Default is 4 hours.
 
 
Mais bon c pas ça ...


Message édité par Shogun2002 le 10-10-2003 à 14:15:30
n°536132
Shogun2002
Posté le 10-10-2003 à 14:21:51  profilanswer
 

Si je comprends bien si le maximum-connection-lifetime est mis à 2 h, si qqun se balade sur le site en jsp avec sa connectionpool, au bout de 2 h (même en étant toujours actif, en executant des requetes) il perd sa connection à la bd ?

n°540099
wlitw
Posté le 15-10-2003 à 11:15:23  profilanswer
 

alien_nan a écrit :

ok, merci pour ces eclairages.
 
Je vais mettre en place le pool de connexion, avec une 20aine de connexions d'ouvertes, vu que c pour un site assez frequenté.
 


 
Pas la peine d'en ouvrir autant, ouvres en entre 5 et 10 dans ton pool, ça sera largement suffisant, même pour un site TRES fréquenté. Le gain de perf au delà de 10 connections ouvertes n'est d'ailleurs que très très faible.


---------------
Steam : wlitw77 - GoG : wlitw
mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Javabean/session/expiration

 

Sujets relatifs
Variable de session PHP - Quand le code fait foirer le W3C ValidatorPB variable de session ou globale
[PHP] session_id retourne l'ID de la session en cours !!! explicationVariable Javascript / session_register()
[PHP] Session ki casse aléatoirement...Pb de session avec Mozilla mais pas IE/NS
[PHP]pbavec les $_SESSION[' '][PHP] Ouvrir une session utilisateur
[PHP] Temps restant avant expiration d'un cookiedétruire une session à la fermeture du navigateur !?! (réponse inside)
Plus de sujets relatifs à : Javabean/session/expiration


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR