sql >> Databasteknik >  >> RDS >> Mysql

Kontrollera vilka användare som är online

Sättet jag gör det är att regelbundet pinga en specialhanterare med AJAX (en gång i 30 sekunder). Det är en hel del förfrågningar, så istället för att uppdatera tabellen för onlineanvändare varje gång med senaste besök uppdaterar jag memcache. Jag uppdaterar endast databasposten när den är 5 minuter efter memcache-posten (du kan välja en större eller mindre fördröjning beroende på belastningen). Sedan tar ett cron-jobb bort inaktuella poster från onlineanvändartabellen.

För att kontrollera om en specifik användare är online kollar jag helt enkelt hans memcache-post. Felet är aldrig mer än 30 sekunder. Databasen är aldrig mer än 5 minuter efter, så resultaten från databasen är också ganska exakta.

Jag använder också dessa periodiska förfrågningar för att skicka händelser till användaren.



  1. Hur trimmar jag ledande och efterföljande citat från MySQL Row?

  2. Hur återställer man en enskild tabell från en .sql postgresql backup?

  3. Hur man infogar flera rader från ett textområde i MySQL

  4. Unix Timestamp bigint(20)