14. april 2004 - 13:45Der er
23 kommentarer og 1 løsning
Optimering af css og asp.
Hejsa! Jeg har opbygget mit website toflo.dk helt efter css. Men da jeg er en luset amatør fylder mit stylesheet nu 11 kb. Er det ikke i overkanten, og er der nogen har har nogle gode råd til hvordan man kan minimere det?
En anden ting jeg er lidt i tvivl om er brugen af asp. Hvad er bedst (skaber mindst trafik):
1: <p>Nu skriver vi en variabel:<%response.Write variabel%>.</p>
eller
2. <%response.Write "<p>Nu skriver vi en variabel: "& variabel &"."%>
Det der er humlen i det er, at jeg er i tvivl om om det er bedst at bruge response.Write hele vejen igennem, eller om det er bedre at skifte mellem html og asp flere gange.
ASP skriver HTML kode VS spring frem og tilbage (optimering)
Eksempel 1 (den hurtige): Der er 5 elever på en restaurant. Der er 1 minutters gang fra køkkenet (serverside) og til bordet (klientside) hvor eleverne sidder. Tjeneren kommer for at tage imod deres bestilling (1 minut er passeret). Tjeneren tager alle elevernes bestillinger og går hen til kokken (endnu 1 minut er passeret). Der gik i alt 2 minutter fra de satte sig ved bordet, til kokken havde deres bestilling. Det tog ikke lang tid, da det hele skete på samme tid.
Eksempel 2 (den langsomme): Der er 5 elever på en restaurant.. Der er 1 minutters gang fra køkkenet (serverside) og til bordet (klientside) hvor eleverne sidder. Tjeneren kommer for at tage imod deres bestilling (1 minut er passeret). Tjeneren tager 1 elevs bestilling og går hen til kokken (+1 min.). Tjeneren går derefter tilbage til bordet (+1 min.), tager imod endnu en bestilling og går tilbage til kokken (+1 min.). Sådan skifter tjeneren mellem bordet (klientside) og køkkenet (serverside) indtil alle har bestilt. Det taget i alt 10 minutter. Pointen er som følgende: Ved at udføre at det der skal udføres samme sted (serveren; ASP skriver HTML koden), går det hurtigere. Det er en del af optimeringsprocessen. En andel del af optimeringsprocessen er direkte tilslutning til databasen, via ASP. Jeg har også brugt Option Explicit som tvinger programmøren (mig) til at definere variablerne. Dette gør at hastigheden, når den skal hente værdierne, øges.
Skulle være stoppet ved: "Pointen er som følgende: Ved at udføre at det der skal udføres samme sted (serveren; ASP skriver HTML koden), går det hurtigere."
Kl. 13:58:08 ramte du faktisk sømmet. Jeg mener nemlig at det må være lettere for serveren når den ikke skal bearbejde alt teksten, men kun den dynamiske del.
Men jeg er jo stadig en luset amatør ;), så det kan godt være at det ikke er rigtigt.
Nu er jeg godt nok ikke csshaj.. men det ser godt ud (formaering).. hvis du vil reducere filstørrelsen, skal du nok reducere antallet af linier, da "ny linie" vist også tager plads..
..og så fandt jeg nogle småfejl
#menureklamer {position: absolute; top: 450px; height: 300px; width: 100%; text-align: center <-- husk ";".. ellers vil den næste linie ikke virke, hvis du indsætter en.. }
#lup {position: absolute; z-index=3; <-- "=" skal være ":" top: 40px; left: 20px; width: 60px; height: 60px; }
mht "response.Buffer=true"> Det ved jeg faktisk ikke.. men jeg vil tro, at det er det samme som "ASP skriver HTML kode VS spring frem og tilbage".. Forskellen er vel, at det bare tager længere tid, før noget sendes til browseren..
thesurfer >> hmm .. ved ikke helt om jeg køber den forklaring. man "forlader jo ikke bordet" selv om man skifter mellem "html-mode" og "asp-mode". det er jo ikke sådan at serveren sender en stump html til klienten, derefter processerer en stump asp som den sender til klienten, derefter sender "ren" html til klienten og bagefter processerer asp og sender html til klienten. Serveren bruger lidt mere krudt på at identificere script-blokke, hvis det er et hav af dem, men helt normal rendering af sider, koster ikke særlig meget.
"Pointen er som følgende: Ved at udføre at det der skal udføres samme sted (serveren; ASP skriver HTML koden), går det hurtigere" - eh ... alt udføres samme sted. serveren fortolker scriptingen som er inkluderet på en side. når serveren er færdig med at fortolke scriptingen, så sendes det færdige resultat til klienten, som fortolker den asp-genererede HTML/XML/WML/whatever.
nute> mht eksemplet: Det mener jeg at have læst.. jeg kan se at jeg læste bøgerne "Teach Yoursself Active Server Pages in 24 Hours" (af Christoph Willi og Christian Koller, DK-Titel: "ASP – Active Server Pages") og "ASP 3 – dynamiske hjemmesider" (af Michell Cronberg), da jeg skrev rapporten..
thesurfer >> måske .. måske ikke ... det ved jeg ikke, da jeg ikke har læst bøgerne ;o]
anywho ... jeg synes stadig at det er en dårlig forklaring - om ikke andet, en dårlig formulering. Jeg ser ingen sammenhæng mellem den citerede bord-analogi, og sådan det fungerer i den virkelige verden.
-- og nute har helt ret, den analogi går f.eks. på forholdet mellem at give mulighed for at lave løbende validering client-side i forhold til alene at lave løbende validering server-side ...
-- og betyder alt andet lige, at det er dårligt at bruge server-side til at lave småting, som ændrer en smule på siden, hvis det samme kan klares client-side, så opbygningen skal laves, så man serverside får så mange oplysninger på een gang som muligt, hvis der skal reageres på !-)
Ej, det er zq da svært at skrive forståeligt dænsg, men det har i hvert fald ikke det fjerneste med forholdet mellem de to eksempler tofferman kom med ...
Man kunne måske endda argumentere for, at en meget stor html-blok uden behov for dynamik vil være dårlig at sende igennem en response.Write, da asp-fortolkeren så alligevel bliver nødt til at lede den igennem for eventuelle dynamiske tags ...
nute & roenving> Jeg havde åbenbart misforstået et eller andet? Jeg er villig til at sende pointsne en anden vej.. Læg et besked hvis I vil ha' pointsne.. så vil jeg oprette et nyt til dig/jer. Læg også en besked, hvis I ikke vil ha' points :-) Så slipper jeg for at sætte en tidsfrist.. kunne jo være at I ikke fik mails ang dette spm..
thesurfer >> ingen points til mig, tak. det var ikke derfor jeg postede en kommentar. Jeg ville kommentere og påpege at der har blevet godkendt urigtige oplysninger. Dette er noget tofferman har "ret" til at få at vide, så han slipper for at gå rundt og tro at verden er skruet sådan sammen som du har givet indtryk af (no offence).
og kender jeg roenving ret, så er han også rimelig ligeglad med at få points for dette. Det er ikke points der tæller - men at give korrekt information
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.