Som besökare på Hamsterpaj samtycker du till användandet av s.k. cookies för att förbättra din upplevelse hos oss. Jag förstår, ta bort denna ruta!
Annons

Php - file_exists vs databas

Skapad av David, 2011-10-17 20:16 i Webbutveckling & Programmering

1 563
7 inlägg
0 poäng
David
Visningsbild
P Hjälte 1 555 inlägg
0
Vad är snabbast och använder minst kraft av servern?

file_exists för att kolla om användarens bild existerar.
eller.
en databas connection för att kolla om användaren har en bild (0 eller 1).

Ingen status

Är reklamen ivägen? Logga in eller registrera dig så försvinner den!

Addy
Visningsbild
Hjälte 4 inlägg
0
Jag tror det är snabbast att använda en databas eftersom facebook använder det

Ingen status

Tvillingen
Visningsbild
P 31 Hjälte 3 117 inlägg
0
Du kan alltid testa själv, men jag antar att skillnaden kommer vara så liten att det knappt märks. Jag skulle nog föredra databasen ändå, för du hämtar troligtvis redan information om användaren från databasen, så varför inte även slänga med om bilden finns eller inte i resultatet från databasen?

http://www.developerfusion.com/code/2058/determine-execution-time-in-php/

Jag är ond!

David
Visningsbild
P Hjälte 1 555 inlägg
Trådskapare
0

Svar till Tvillingen [Gå till post]:
Jo men på tex. videor där jag enbart plockar data ifrån "videos" och inte "users". Om det skulle vara snabbare att använda file_exists istället för att köra ut "bild 1:0" ifrån users.

Ingen status

Joel
Visningsbild
P Hjälte Många söta inlägg
0
Svar till David [Gå till post]:
Snabbast är file_exists. Snyggast är databas. Ännu snyggare är om du har det lokalt cachat (typ i en användares session som du ändå hämtar (om det är den användaren som är just nu) eller i serverns RAM-minne), men det kanske är överkurs. Däremot kan du vinna på att göra en JOIN på din userstabell, då gör du bara en fråga... Se till att ha rätt index i databasen så går det fort. Vad är anldningen till att du undrar vad som är snabbast?

Det är också en fråga om, gör du många läs ifrån användare? Är det mycket samma användare (operativsystemet cachar filoperationer, sk. stat i unix/linux, vilket gör att om man stat:ar en redan för inte så länge sedan stat:ad fil, får man ett värde plockat ur cachen).



Tillägg av Joel 2011-10-17 20:55

Edit: RAM-disk går förstås fortast. :)

Kaka

Anonymmedlem
Visningsbild
Bitter 9001 inlägg
0
Vi kör både och på HP. :)
code
Visningsbild
P 25 Hjälte 76 inlägg
0
Svar till David [Gå till post]:
Om du har extremt hög belastning och vill vara hardcore kan du ju köra memcached:

Exempel från Wikipedia:
Ett stycke php-kod:

function get_foo(int userid) {
/* first try the cache */
data = memcached_fetch("userrow:" + userid);
if (!data) {
/* not found : request database */
data = db_select("SELECT * FROM users WHERE userid = ?", userid);
/* then store in cache until next get */
memcached_add("userrow:" + userid, data);
}
return data;
}



Forum » Datorer & IT » Webbutveckling & Programmering » Php - file_exists vs databas

Ansvariga ordningsvakter:

Användare som läser i den här tråden just nu

1 utloggad

Skriv ett nytt inlägg

Hej! Innan du skriver om ett potentiellt problem så vill vi påminna dig om att du faktiskt inte är ensam. Du är inte onormal och världen kommer inte att gå under, vi lovar! Så slappna av och gilla livet i några minuter - känns det fortfarande hemskt? Skriv gärna ner dina tankar och frågor, vi älskar att hjälpa just dig!

Den här tråden är äldre än Rojks drömtjej!

Det senaste inlägget i den här tråden skrevs för över tre månader sedan. Är du säker på att du vill återuppliva diskussionen? Har du något vettigt att tillföra eller passar din fråga i en ny tråd? Onödiga återupplivningar kommer att låsas så tänk efter en extra gång!

Hjälp

Det här är en hjälpruta

Här får du korta tips och förklaringar om forumet. Välj kapitel i rullningslisten här ovanför.

Rutan uppdateras automagiskt

När du använder funktioner i forumet så visas bra tips här.


Annons
Annons
Annons
Annons