Kom ihåg mig?
Home Menu

Menu


Cache av ett mysql-resultat

 
Ämnesverktyg Visningsalternativ
Oläst 2006-06-02, 20:54 #1
Henrik Nygren Henrik Nygren är inte uppkopplad
Medlem
 
Reg.datum: Jan 2006
Inlägg: 57
Henrik Nygren Henrik Nygren är inte uppkopplad
Medlem
 
Reg.datum: Jan 2006
Inlägg: 57
Jag vill spara mysql-resultat i en fil och sedan anropa den för att få fram databasens info. Filen ska innehålla det mysql_query() får ut.
Filen uppdateras varje minut, och fungerar alltså som caching, istället för att varenda besökare ska anropa databasen hela tiden.

Jag har inte riktigt fått till det, med att flytta ut innehållet av en mysql_query() till en textfil.
Innehållet kommer ut som någon sorts resurs, står det i manualen.

Någon som kan förklara närmare hur jag skall gå tillväga?
Henrik Nygren är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-06-02, 21:14 #2
koalas avatar
koala koala är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: Sep 2004
Inlägg: 1 154
koala koala är inte uppkopplad
Har WN som tidsfördriv
koalas avatar
 
Reg.datum: Sep 2004
Inlägg: 1 154
Jag har också funderat i dessa banor. Tyvärr är jag alldeles för oinsatt i datavetenskap ibland. Tänk på att det tar lite tid att läsa från filen, jämfört med att t ex läsa från RAM-minnet. Hade man använt ASP hade man förmodligen kunnat spara resultset som en applikationsvariabel? Något liknande i PHP? Eller är det kanske bättre att mellanlagra i en temporär tabell som ligger i RAM-minnet istället för på disk, eller kan MySQL cacha queries själv?
koala är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-06-02, 21:33 #3
kullervos avatar
kullervo kullervo är inte uppkopplad
Bara ett inlägg till!
 
Reg.datum: Dec 2003
Inlägg: 1 519
kullervo kullervo är inte uppkopplad
Bara ett inlägg till!
kullervos avatar
 
Reg.datum: Dec 2003
Inlägg: 1 519
Henrik:
I första hand: mysqls inbyggda query cache.
I andra hand: Använd PHPs OB och cache:a hela/delar av sidan istället.
I värsta fall: serialize()

Koala:
OS:et cachar såklart filer i annars oanvänt RAM.
kullervo är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-06-03, 01:02 #4
guran guran är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: Apr 2004
Inlägg: 1 061
guran guran är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: Apr 2004
Inlägg: 1 061
För mig känns det lite otydligt vad du är ute efter. Du kan ju spara resultatet i en semikolonavgränsad fil och sedan läsa in den i en array som du sedan går igenom och bygger upp det resultat som ska ingå i den html-sida som du ska skicka iväg till en browser.

För mig känns det dock som om man upprepar samma sak som ett svar från databasen skulle ge. Resursutnyttjandet av databasen blir nog inte speciellt lägre än om man lät frågan köras mot den i stället för att ha resultatet i en fil.

Bättre vore i sådant fall att i en fil lagra den html-kod med datan från databasen och inkludera den i den sida där datan ska visas. I detta fall behöver ju ingen bearbetning av datan ske utan den är redan gjord. Detta ökar säkert prestandan avsevärt. Det var kanske detta du var ute efter.
guran är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-06-03, 09:34 #5
Henrik Nygren Henrik Nygren är inte uppkopplad
Medlem
 
Reg.datum: Jan 2006
Inlägg: 57
Henrik Nygren Henrik Nygren är inte uppkopplad
Medlem
 
Reg.datum: Jan 2006
Inlägg: 57
Någon som har länk till en bra ob-guide?
Omöjligt att googla...
Henrik Nygren är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-06-03, 09:39 #6
zorans avatar
zoran zoran är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jun 2004
Inlägg: 598
zoran zoran är inte uppkopplad
Mycket flitig postare
zorans avatar
 
Reg.datum: Jun 2004
Inlägg: 598
Citat:
Originally posted by Henrik Nygren@Jun 2 2006, 20:54
Jag vill spara mysql-resultat i en fil och sedan anropa den för att få fram databasens info. Filen ska innehålla det mysql_query() får ut.
Filen uppdateras varje minut, och fungerar alltså som caching, istället för att varenda besökare ska anropa databasen hela tiden.

Jag har inte riktigt fått till det, med att flytta ut innehållet av en mysql_query() till en textfil.
Innehållet kommer ut som någon sorts resurs, står det i manualen.

Någon som kan förklara närmare hur jag skall gå tillväga?
Hmm, det där verkar ju högst onödigt. Att göra en query och sökning i den är ju SQL-motorn optimerad för. En vanlig filläsning kan knappast vara det. Får du bättre prestanda med att läsa och parsa filen än att göra motsvarande query i SQL, då tycker jag att det låter att din query eller databasdesign är helt uppåt väggarna.
zoran är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-06-03, 10:38 #7
Henrik Nygren Henrik Nygren är inte uppkopplad
Medlem
 
Reg.datum: Jan 2006
Inlägg: 57
Henrik Nygren Henrik Nygren är inte uppkopplad
Medlem
 
Reg.datum: Jan 2006
Inlägg: 57
problemet är att mitt webbhotell har klagat på alla requests som har gjorts till databasen, och jag måste minska på querys, annars blir jag nerstängd.
Gränsen är 300000 requests/dag...
Henrik Nygren är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-06-03, 10:48 #8
zorans avatar
zoran zoran är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jun 2004
Inlägg: 598
zoran zoran är inte uppkopplad
Mycket flitig postare
zorans avatar
 
Reg.datum: Jun 2004
Inlägg: 598
Citat:
Originally posted by Henrik Nygren@Jun 3 2006, 10:38
problemet är att mitt webbhotell har klagat på alla requests som har gjorts till databasen, och jag måste minska på querys, annars blir jag nerstängd.
Gränsen är 300000 requests/dag...

Byt webbhotell då eller skaffa dedikerad server. Jag tror inte de kommer vara gladare över något som kommer tugga mer kraft i sig.
zoran är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-06-03, 11:13 #9
Henrik Nygren Henrik Nygren är inte uppkopplad
Medlem
 
Reg.datum: Jan 2006
Inlägg: 57
Henrik Nygren Henrik Nygren är inte uppkopplad
Medlem
 
Reg.datum: Jan 2006
Inlägg: 57
Jag har inte riktigt pengarna just nu...

serialize funkar inte som det ska...

Fortfarande ingen som har en länk till en bra ob-guide?
Henrik Nygren är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-06-03, 18:24 #10
jahaa jahaa är inte uppkopplad
Medlem
 
Reg.datum: Jun 2004
Inlägg: 91
jahaa jahaa är inte uppkopplad
Medlem
 
Reg.datum: Jun 2004
Inlägg: 91
Kika PEAR's Cache_Lite om du inte vill skapa en sådan klass själv.

Cache_Lite ska ha ett ob utbyggnad som kommer med som standard om jag kommer ihåg rätt.
jahaa är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 14:31.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017