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

Apache Discussion :

[Apache][Tomcat] Nombre d'utilisateurs connectés


Sujet :

Apache

  1. #1
    Membre du Club
    Inscrit en
    Mai 2004
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 73
    Points : 49
    Points
    49
    Par défaut [Apache][Tomcat] Nombre d'utilisateurs connectés
    Bonjour,

    J'ai développé une application web (Apache/Tomcat) sur laquelle j'ai bricolé un petit programme qui me donne le nombre d'utilisateurs connectés à l'appli en temps réel. Rien de bien sorcier, j'ai utilisé la notion de <listener> dans le web.xml et de ServletContextListener...(contextInitialized / contextDestroyed) et un tableau dans lequel je gère les sessions. Ca marche très bien. Seulement, ça n'est pas robuste ! Tant qu'un utilisateur se délogue proprement, ça marche, mais s'il quitte brutalement l'application (8 fois sur 10) en cliquant sur la petite croix rouge, l'événement contextDestroyed n'est pas déclenché et la mise à jour du tableau de sessions n'est pas mis à jour...

    Je me demandais s'il n'y avait pas un autre moyen pour connaitre le nombre d'utilisateurs en temps réel en regardant du côté d'Apache... Quelqu'un a t-il une autre solution à proposer, d'autres pistes à explorer ? Je suis preneur !

    Merci à vous !

  2. #2
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 316
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 316
    Points : 15 651
    Points
    15 651
    Par défaut
    le problème que tu as le même que celui des forums qui ont besoin de savoir le nombre de connectés
    ce qu'il se passe est qu'avec l'HTTP il n'est pas possible de détecter la deconnexion donc la solution qui a été choisie sur tous les forums est de compter le visiteur connecté pendant un certain nombre de minutes (souvent 2 ou 3 minutes mais c'est à adapter à ton application) et passé ce délai la personne n'est plus considérée comme connectée

  3. #3
    Membre du Club
    Inscrit en
    Mai 2004
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 73
    Points : 49
    Points
    49
    Par défaut
    Et comment fais-tu ce comptage ? Tu utilise tomcat ou apache ?

    Merci.

  4. #4
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 316
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 316
    Points : 15 651
    Points
    15 651
    Par défaut
    il faudra rajouter une table dans la base de données et du code dans l'application qui fait l'accès par nom d'utilisateur/mot de passe
    l'algorithme est dans ce genre
    - si l'utilisateur est autorisé à se connecté : mettre à jour son enregistrement dans la table de connectés
    - nettoyer la table en supprimant les utilisateurs qui ont plus de 2 minutes
    - compter le nombre de connecté restants

  5. #5
    Membre du Club
    Inscrit en
    Mai 2004
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 73
    Points : 49
    Points
    49
    Par défaut
    Merci à toi mathieu

    Le pb dans mon appli c'est que je ne peux pas considérer qu'une session vieille de plus de 2 min est inactive, loin de là Je me retrouve donc à mon point de départ. Je pensais qu'avec apache on pouvait faire plus de truc qu'avec tomcat, mais non. Tant pis.

    Merci à vous.

  6. #6
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 316
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 316
    Points : 15 651
    Points
    15 651
    Par défaut
    Citation Envoyé par JohnBlatt
    Je pensais qu'avec apache on pouvait faire plus de truc qu'avec tomcat
    ce sont tous les deux des serveurs HTTP donc en théorie ils font la même chose

    Citation Envoyé par JohnBlatt
    Le pb dans mon appli c'est que je ne peux pas considérer qu'une session vieille de plus de 2 min est inactive, loin de là
    pourquoi, certaines pages mettent plus de 2 minutes à être lue ?
    2 minutes ce n'est pas le temps de connexion totale mais le temps d'inactivité entre 2 actions

Discussions similaires

  1. Réponses: 0
    Dernier message: 28/10/2014, 08h35
  2. Réponses: 2
    Dernier message: 13/05/2014, 08h09
  3. Nombre d'utilisateurs connectés
    Par Luc84 dans le forum Firebird
    Réponses: 2
    Dernier message: 02/08/2008, 22h18
  4. [Tomcat] Lister les utilisateurs connectés
    Par will_mad dans le forum Tomcat et TomEE
    Réponses: 3
    Dernier message: 08/07/2005, 15h19
  5. nombre d'utilisateur connecté a ma base ACCESS
    Par shkinmi dans le forum VBA Access
    Réponses: 2
    Dernier message: 28/11/2003, 13h52

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