28. april 2010 - 19:06Der er
7 kommentarer og 1 løsning
online
hej,
Hvad er den hurtigst, stabile, ikke krævende måde at lave et online system i php?
altså et system som siger om brugeren er online eller offline
altså pt. sender jeg bare tid i sql også tjekker den bare tiden i db hele tiden... men der må da være en mindre recurce krævende måde at gøre dette på...
ps. for mig er det meget vigtigt at de forskellige systemer ikke kræver det store.. da det er en meget overbelastet server...
Hos Computerworld it-jobbank er vi stolte af at fortsætte det gode partnerskab med folkene bag IT-DAY – efter vores mening Danmarks bedste karrieremesse for unge og erfarne it-kandidater.
jeg mener... er der ikke en måde hvor man ikke skal kontakte sql hele tiden?
sådan ikke skal kontakte sql hver gang en bruger reloader / klikker på en aden side...
kan man gøre noget alaa.. den kun kontakter sql hvert 2 min. lige nu har jeg bare et lille stykke kode på hver side som sætter den aktuelle tid i sql..
ps. ved godt jeg ikke forklare mig så godt lige nu ^^
Igen - det er nemmere at vurdere dit resourceforbrug hvis man har noget at gå ud fra...
Alternativt er her et fif; brug en session til at afgøre hvornår brugeren sidst har opdateret sin sidste aktivitet i databasen - f.eks. fem minutter. Hvis der er aktivitet efter den grænse, opdater da databasen. Og grænsen for hvornår man ikke længere står som online kunne jo så være ti minutter. Det giver et vindue på fem minutter hvor du reelt ikke ved om brugeren stadig er online eller ej, men det kræver færre databasekald.
Du kan også kigge på hvilken storage engine du bruger til at gemme dataet i (evt. en kombination med repox's kommentar).
Hvis du bruger MyISAM eller InnoDB, kan du opnå en stor hastighedsforøgelse ved at bruge en MEMORY tabel i stedet. Så kan MySQL hente/skrive direkte til hukommelsen i stedet for til disken. Det gør stor fordel i forhold til hastigheden, da disken er mange gange langsommere end RAM'en. Og du sparer også ressourcer på disken (disk I/O).
Du skal så bare huske at rydde op i tabellen når de besøgende ikke længere er online, så den ikke på sigt kommer til at sluge al hukommelsen på serveren.
Var der ikke en eneste kommentar du fandt brugbar?
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.