|
|
|
Количество посетителей на сайте
|
|||
|---|---|---|---|
|
#18+
Добрый день. Пишу сайт на JSF. Возник вопрос, как узнать сколько и какие пользыватели находяться сечас на сайте? Мои мысли: Для каждого пользывателя есть своя сесия (бин з областю дейстивия SesionScoped), в которой хранятся дание о нем. Я создал ощо один бин, з областю действия ApplicationScoped, в нем создал список, куда добавляются посетители. Например зашол посетитель на сайт и з бина ApplicationScoped вызвался статический метод, который занес его дание в список. Так вот, с помощю этого я могу видеть кто и сколько людей на сайте. Даже написал метод удаления людей из этого списка. Но этот метод срабативает только тогда, когда посетитель жмет кнопку "Выход", а если просто закроет окно, браузер метод не зрабатывает и на сайте все равно пишет что он есть, что впринцепе и правильно). Запихал этот метод в finalize в SesionScoped (бине который создает сесию), не работает. Ищо вопрос: как зделать, чтоб только один раз пользыватель мог войти на сайт? А то в меня он входит на одном компьютере, тут же может войти с тем самим ником\паролем на втором компьютере. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.04.2012, 15:45:29 |
|
||
|
Количество посетителей на сайте
|
|||
|---|---|---|---|
|
#18+
denis11111Добрый день. Пишу сайт на JSF. Возник вопрос, как узнать сколько и какие пользыватели находяться сечас на сайте? Ищо вопрос: как зделать, чтоб только один раз пользыватель мог войти на сайт? А то в меня он входит на одном компьютере, тут же может войти с тем самим ником\паролем на втором компьютере. SessionLister. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.04.2012, 15:49:12 |
|
||
|
Количество посетителей на сайте
|
|||
|---|---|---|---|
|
#18+
LeonidvSessionLister. Путь в принцепе понятен) , но можна по подробней? Я пщсмотрел что есть интерфейс HttpSessionListener, он имеет два метода: создания и уничтожения сесии. Но в меня есть и другие SessionScoped бины, которие не относятся к посетителям, или както надо добавлять сесию? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.04.2012, 18:13:32 |
|
||
|
Количество посетителей на сайте
|
|||
|---|---|---|---|
|
#18+
denis11111LeonidvSessionLister. Путь в принцепе понятен) , но можна по подробней? Я пщсмотрел что есть интерфейс HttpSessionListener, он имеет два метода: создания и уничтожения сесии. Но в меня есть и другие SessionScoped бины, которие не относятся к посетителям, или както надо добавлять сесию? Кроме посетителей кто есть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.04.2012, 20:38:46 |
|
||
|
Количество посетителей на сайте
|
|||
|---|---|---|---|
|
#18+
Ну по-любому должен быть метод login(), вот в нем можно вытянуть аппликейшен скопуед бин и проверить - есть ли такой юзер, если нет - то положить его в мапу, если есть - то выкинуть exception ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.04.2012, 21:21:04 |
|
||
|
Количество посетителей на сайте
|
|||
|---|---|---|---|
|
#18+
denis11111ApplicationScoped, в нем создал список, куда добавляются посетители1. хранить в этом списке дату последней активности пользователя 2. при запросе кол-ва пользователей учитывать устаревших пользователей (например, те, у которых последняя активность была больше, чем 5 минут назад относительно времени запроса кол-ва пользователей) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.04.2012, 21:25:10 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=37776434&tid=2131895]: |
0ms |
get settings: |
12ms |
get forum list: |
22ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
48ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
59ms |
get tp. blocked users: |
2ms |
| others: | 349ms |
| total: | 518ms |

| 0 / 0 |
