Tjena.
Vi har haft en diskussion på jobbet idag om huruvida vi ka använda oss av sessioner eller sql i huvudsak när vi utvecklar ett kommande system. Vi ska använda både och ska nämnas men vilket ska man lägga tyngden på?
Systemet i sig är ett kund- och säljsstödssystem skrivet i php4 mot mysql4 och har flerspråksstöd såväl som modulär uppbyggnad. Givetvis är det också ett fleranvändarsystem. Varje gång en sida i systemet laddas inkluderas en eller flera moduler (den dynamiska navigationsmenyn är en modul, språkhanteringen en annan för att exemplifiera).
Såhär anser jag (något förenklat):
Vi bygger ett "load-on-demand"-system där all information, när den laddas, läggs upp i en session. Detta för att slippa att hämta den från databasen varje gång en sida laddas. Varje gång en modul laddas in i systemet fylls sessionsarrayen på med ytterligare information. Det blir mindre databasaccesser och då låg belastning på servern.
Såhär anser min kollega (även detta något förenklat):
Vi bygger ett "load-on-demand"-system där all information hämtas från databasen. Vid varje modulladdning hämtas all konfiguration för modulen (språk osv) och läggs i en session. Samtidigt raderas tidigare sessioner för att hålla sessionsvariablerna på ett minimum. Detta för att ha en låg minnesbelastning på servern.
Det är svårt att säga vad som är rätt och vad som är fel då båda sidor har sina för- och nackdelar. Är det någon som har studerat det här och har koll på vilket av de två sätten som är bättre än det andra?
Självfallet är hårdvaran en viktig bit i denna ekvation, men den diskusisonen tar vi en annan gång =)