Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php][mysql]Kto jest online.
styryl
post
Post #1





Grupa: Zarejestrowani
Postów: 223
Pomógł: 27
Dołączył: 16.04.2008
Skąd: Bakutilu

Ostrzeżenie: (0%)
-----


Witam

Mam małe pytanie a mianowicie:

Chce zrobić wyświetlanie na stronie kto jest w tym momencie online. I mam taki pomysł aby zrobić pole w bazie z użytkownikami np online_time i zapisywać tam czas ostatniego logowania i za każdym razem jak user gdzieś (oczywiście po zalogowaniu) kliknie to robić update w bazie danych. I wyświetlać userów np z ostatnich 10 minut.

I tutaj pytanie: czy ten sposób nie zajedzie mi bazy? Chodzi o obciążenie.

Czy jest jakiś inny sensowny sposób wykonania tego?

Pzdr
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
bogdan89
post
Post #2





Grupa: Zarejestrowani
Postów: 320
Pomógł: 36
Dołączył: 28.08.2006
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Twój sposób jest sensowny i nie obawiaj się o przeciążenia bazy... zwykle dobre serwery obsługują 4 000 000 zapytań do bazy danych na dobę, więc sobie policz w jakim stopniu takie jedno, dodatkowe zapytanie na odświeżenie strony wpłynie na obciążenie bazy.

A, i 10 minut to moim zdaniem chyba za dużo. 3 minuty powinno wystarczyć, żeby nie było dużych przekłamań.

Jest nawet sposób na zrobienie tego liczącego nawet co do sekundy (wykorzystując Ajax) i pokazanie ilości użytkowników online w czasie rzeczywistym, ale to już tak tylko sobie gadam.
Go to the top of the page
+Quote Post
ave
post
Post #3





Grupa: Zarejestrowani
Postów: 117
Pomógł: 2
Dołączył: 29.01.2004
Skąd: Rz-ów

Ostrzeżenie: (0%)
-----


ja bym zrobił osobną tabele w bazie (typ memory) gdzie wrzucałbym ostatni czas aktywności,
ustawił crona co np 5 minut na kasowanie rekordów starszych niż X minut,
dzięki temu select obejdzie się bez warunków.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 05:08