sql >> Databáze >  >> RDS >> Mysql

Zkontrolujte, zda je uživatel na stránce

V zásadě to funguje následovně.

Pokaždé, když uživatel provede nějakou akci (obnovení chatu, odeslaná zpráva, navštívená stránka atd.), token přidružený k uživateli (token, který je uložen na vašem serveru, například DB) se aktualizuje s aktuálním časem.

| User ID     | Last action         |
-------------------------------------
| 14 (mark)   | 2012-02-09-10:34:53 |
| 56 (phil)   | 2012-02-09-09:12:34 |
|  9 (john)   | 2012-02-09-10:33:11 |

A pak se rozhodnete, že uživatel je online pokud jeho token není příliš starý (5/10 minut?)

Tuto metodu můžete vylepšit, pokud používáte AJAX k odesílání pravidelného požadavku na server přibližně každou 1 minutu. Tento požadavek AJAX aktualizuje hodnotu tokenu. Tímto způsobem tedy můžete uživateli říci, že je online, i když nedělá nic jiného, ​​než že na stránku zírá. A když skončí (zavře prohlížeč nebo kartu), periodické volání AJAX přestane fungovat, takže po 5/10 minutách je uživatel prohlášen za offline .

Hodně štěstí!



  1. Vložit s nativním dotazem Hibernate nefunguje pro java.util.Date

  2. Vyberte MAX nebo Order By Limit 1

  3. Homebrew brew install mysql dává ...Chyba při nastavování hodnoty '127.0.0.1' na 'server_id'

  4. Načítání maximální hodnoty z sql-vb.net