OVH Cloud OVH Cloud

sessions php

4 réponses
Avatar
glad
Bonjour,

Je me pose une question toute bête ... Mais peut être pas facile à
répondre...

Est il possible de connaître le nombre de personne connectée sur un site
(via des sessions ou autre), pour par exemple faire de la répartition de
charges sans avoir windows 2000 advanced server ?

Mmmmmmh c'est sûrement une question incongrue :-)

Désolé
A++

4 réponses

Avatar
dmetzler
Le protocole HTTP est un protocole asynchrone, donc t'as aucun moyen de
connaitre exactement le nombre de personnes connectées *actuellement*.
Tu peux uniquement connaitre le nombre de personnes qui se sont
connectées les x dernières minutes.

Par contre, je vois pas trop le rapport avec la répartition de charge
et Windows 2k AS a pas le monopole du load balancing loin de là !
Avatar
bruno
y'a bien des site qui proposent de voir les membre actuellmetn
connectés...
donc y'a un moyen...
j'en sait pas plus...
http://www.php.net/manual/fr/ref.session.php
essaie de voir...
Avatar
Steuf
y'a bien des site qui proposent de voir les membre actuellmetn
connectés...


Pas fiable et ne le sera jamais

donc y'a un moyen...


On a jamais dit qu'il n'y avait pas moyen, on a dit que ce n'était pas
fiable. Mais en php on ne peut détecter quand un visiteur part, donc on
utilise un système de temps qui fait que s'il le connecté n'a pas
d'activité pendant un temp t, il sera mis hors ligne.

Après il y a le problème d'identifier le connecter, souvent faire par IP
cela n'est pas fiable du tout, il faudrait faire une sessions pour
chaque connecté avec une ID unique.

--
Site dédié au développement WEB : http://www.exinsidephp.com

Avatar
dmetzler
Et as tu vérifié que le nombre indiqué était *réellement* le
nombre d'utilisateurs sur le site ?
Le nombre de personnes affichées sur ce genre de sites, est un nombre
qui provient par exemple du nombre de sessions actives. Mais quand
est-ce que tu désactive une session ? La réponse est : quand ça fait
un certain temps que la personne n'est pas venue.

Le protocole HTTP ne permet pas, parce qu'il est asynchrone, de savoir
combien de personnes sont actuellement connectées.

Pour réexpliquer encore une fois plus concrètement : je me connecte
sur un site. Ca ouvre une session qui m'est propre. Lorsque je navigue,
je met à jour ma session à chaque coup. Si à un moment ou à un
autre, je décide de ne plus naviguer sur le site, le serveur n'a aucun
moyen de le savoir.