Permalänk
Medlem

Spara variabler på servern, PHP

Jag vet att det ska finnas något bra sätt att spara variabler i minnet på servern. Detta är ickekritiska variabler som t.ex. "antalet inloggade" eller "antalet artiklar", som lätt kan hämtas med en mysql count().

Dock ville jag bespara servern på ett antal onödiga queries och se om jag kan spara dom i serverminnet istället. Jag kommer tyvärr inte ihåg vad den sortens variabler hette, någon som gör det?

Visa signatur

Let me tell you something. You don't have to say anything, you know why? Cause you can pick up all your stuff, because you're mother-fucking fired! | Lemeno.se - En blogg om att Tjäna Pengar På Internet | Min blogg om styrketräning och kost

Permalänk
Medlem

Är det HEAP-tabeller du tänker på?

Permalänk
Medlem

Nej, det är det inte.

Kanske var lite otydlig, men det jag syftade på var att spara en PHP-variabel. Alltså att $antalOnline t.ex. inte förstörs efter att sidan är laddad och kan ändras och hämtas från ALLA användarnas sessioner.

Visa signatur

Let me tell you something. You don't have to say anything, you know why? Cause you can pick up all your stuff, because you're mother-fucking fired! | Lemeno.se - En blogg om att Tjäna Pengar På Internet | Min blogg om styrketräning och kost

Permalänk
Medlem

Det är ju inget svårt att göra en egen cacheklass/funktion som sparar en textfil på servern med information som är dryg att ta fram via mysql-frågor.

Jag har en /cache/ med en massa sånt som du pratar om.

Då kan du ju också ha automatisk inläsning så att du får $cache['antalOnline'] som variabel om du så önskar.

Permalänk
Medlem

Fast jag har för mig att det var inbyggt i PHP. Men jag kanske missminner mig?

Visa signatur

Let me tell you something. You don't have to say anything, you know why? Cause you can pick up all your stuff, because you're mother-fucking fired! | Lemeno.se - En blogg om att Tjäna Pengar På Internet | Min blogg om styrketräning och kost

Permalänk
Medlem

Vet inte, tror inte det finns. Men det finns ju en massa minnesoptiming av blandade slag som moduler till webbservern.

Permalänk
Medlem

memcached gör i princip det du vill fast inte inom minnesutrymmet för apache/PHP.

Permalänk
Medlem

Jag kommer tydligen ihåg fel.

Min lösning är iallafall att spara antalet i en variabeltabell i mySQL där värdena uppdateras t.ex. var femtonde minut eller dyl.

Visa signatur

Let me tell you something. You don't have to say anything, you know why? Cause you can pick up all your stuff, because you're mother-fucking fired! | Lemeno.se - En blogg om att Tjäna Pengar På Internet | Min blogg om styrketräning och kost

Permalänk

Kanske är det "Shared Memory" du tänker på? Googla shm_attach, shm_put_var, shm_get_var, shm_detach. Det kräver dock att servern är konfigurerad att använda "Shared Memory" (t.ex apache ska konfigureras med "--enable-sysvsem").

Permalänk
Medlem

Det är inte $_Globals du tänker på då?

Visa signatur

Bloggar om Hemautomation på HomeAutomateIt.com

Permalänk
Medlem

APC (http://se2.php.net/apc) fungerar fint för sådant.

$apc_key = 'antal_inloggade'; if (!$antal_inloggade = apc_fetch($apc_key)) { //Logik för att hämta antal inloggade.. $antal_inloggade = 1; apc_store($apc_key, $antal_inloggade, 60); }