login  Naam:   Wachtwoord: 
Registreer je!
 Forum

mysql_query vs json (Opgelost)

Offline pinquin - 25/03/2011 10:59
Avatar van pinquinHTML interesse Beste sitemasters,

Ik ben bezig met een site specifiek voor op de iPad en hierdoor wil ik de site zo licht mogelijk houden.
Nu heb ik 'vaste' data met keuze opties (36), wat in de toekomst uitgebreid kan worden naar ongeveer 100 opties:
Sportief, Comfort, Imago, Uitstraling, Model, enz...

De opties staan op een pagina die bij elke keer aanroepen gebruikersgegevens uit de database haalt, waarbij dus ook de gekozen opties worden opgehaald.

Nu kan ik elke keer 36 tot 100 rijen uit de database halen om de selectie lijst te creëren of een json bestand maken met alle opties erin die ingeladen moet te worden.

Dan is hier eindelijk mijn vraag (waarvan ik bijna het antwoord denk te weten, maar toch de mening van iemand anders wil horen): Wat is sneller, de 36 tot 100 rijen uit de database halen of het json bestand inladen.

Alvast bedankt.

gr,

9 antwoorden

Gesponsorde links
Offline Maarten - 25/03/2011 11:10
Avatar van Maarten Erelid De data uit uw SQL tabel halen is server-side, JSON file inladen is clientside. Uiteraard is het performanter om enkel de gerelateerde data op te halen via JSON en de opbouw van de interface client-side te doen, maar is iets meer werk natuurlijk 
Offline Joost - 25/03/2011 15:09
Avatar van Joost PHP expert Vergeet niet onderscheid te maken tussen clientside 'lichtheid' of serverside 'lichtheid'.

Wat bedoel je precies met het inladen uit JSON? Laat je dit door javascript parsen of ook door PHP? In het eerste geval: hier zou ik niet voor kiezen, dit kost de iPad alleen maar rekenkracht die de server ook kan doen. In het tweede geval: ik denk dat MySQL hier een betere optie is, eventueel met wat caching.

In principe moet je ervoor zorgen dat je website serverside altijd zo licht mogelijk is. Om voor smartphones en tablets een betere gebruikservaring te bieden kan je er echter wel voor kiezen om wat extra werk door de server te laten doen.
Offline Maarten - 25/03/2011 15:24
Avatar van Maarten Erelid @Joost: als je dan JSON laat parsen door PHP, dan blijft de serverside load hetzelfde, nietwaar? En dan moet er alsnog evenveel rommel doorgestuurd worden naar de iPad over de mobiele verbinding.

Ik zou eigenlijk gewoon voorstellen dat je werkt met tools à la JQueryMobile of iWebKit, en op die manier wordt de JS die ervoor zorgt dat het mobile-achtig lijkt gecached, en wordt enkel gestructureerde HTML-data verstuurd. Zo doe ik het momenteel nu toch met een project voor verkopers-op-de-baan die met die fancy dingen willen rondlopen 
Bedankt door: pinquin
Offline pinquin - 25/03/2011 15:53
Avatar van pinquin HTML interesse Bedankt voor jullie reactie.

Ik heb op dit moment een json bestand gemaakt die direct na het inloggen wordt ingeladen en laat parsen door php. Hierdoor wordt het bestand maar één keer ingeladen totdat de site refreshed, wat in principe niet door de gebruiker gedaan kan worden.

gr,
Offline valles10 - 25/03/2011 15:57
Avatar van valles10 HTML interesse
Maarten schreef:
@Joost: als je dan JSON laat parsen door PHP, dan blijft de serverside load hetzelfde, nietwaar? En dan moet er alsnog evenveel rommel doorgestuurd worden naar de iPad over de mobiele verbinding.

Ja, maar dan moet de ipad alleen nog maar uitlezen, en niet verwerken..
Offline Joost - 25/03/2011 16:01 (laatste wijziging 25/03/2011 16:02)
Avatar van Joost PHP expert
Maarten schreef:
@Joost: als je dan JSON laat parsen door PHP, dan blijft de serverside load hetzelfde, nietwaar? En dan moet er alsnog evenveel rommel doorgestuurd worden naar de iPad over de mobiele verbinding.
Klopt, maar aangezien ik niet helemaal uit het topic kon halen of de JSON nou door javascript of PHP werd geparsed.. ik denk dat JSON parsen misschien zelfs langzamer is dan gewoon iets uit MYSQL database halen, maar dat zou je moeten meten voordat je dat zeker weet. (En de vraag of data uitlezen uit MYSQL of JSOn nou sneller is is ook niet relevant voor een website zo snel mogelijk maken voor een iPad, meer iets voor webdevelopment in het algemeen).
Offline Kevin - 26/03/2011 10:28
Avatar van Kevin Crew Ajax/REST Vergeet ook niet dat verschillende kleinere requests sneller zijn dan 1 grote. Vooral naar mobiele toestellen op een mobiel netwerk zijn veel kleine (asynchrone) request een must in mijn ogen.
Bedankt door: pinquin
Offline pinquin - 26/03/2011 10:53
Avatar van pinquin HTML interesse Weer allemaal bedankt voor de reacties!

Kevin schreef:
Vergeet ook niet dat verschillende kleinere requests sneller zijn dan 1 grote. Vooral naar mobiele toestellen op een mobiel netwerk zijn veel kleine (asynchrone) request een must in mijn ogen.

Goed om te weten, ik haal nu namelijk 5 detail pagina's via ajax in een keer op, maar het is dus beter om de 5 pagina's één voor één op te halen? Dus elke keer als ik op 'volgende' klik de volgende pagina ophalen?
Offline Kevin - 26/03/2011 12:26
Avatar van Kevin Crew Ajax/REST Wat ik in dat geval zou doen is 1 pagina laden en als die gedaan is en volledig zichtbaar is, de volgende via ajax al gaan cachen. (dit is wel in het geval dat je al weet wat de volgende pagina gaat zijn uiteraard.)

Je zou ook wel als de connectie idle is, de extra data (of details in jouw geval) gaan ophalen.
Bedankt door: pinquin
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.177s