Amazon AWS S3 dataeksport for IoT-sensorovervåking med Tools.Valarm.net

Jeg kjørte noen revisjoner på en ny webapplikasjon vi er i ferd med å lansere. Chromium antyder i nettverksbruk at noen få bilder på nettstedet vårt ikke har høyde / bredde dimensjoner eksplisitt deklarert.

Vil dette virkelig hjelpe ytelsen? Bortsett fra at nettleseren ikke trenger å bestemme hvordan bildet skal vises, og i utgangspunktet får beskjed om å bruke X-høyde og Y-bredde for et bilde, hvordan kan dette hjelpe "nettverksutnyttelse"?

Eventuelle andre kommentarer angående dette vil bli verdsatt!

Det vil bare hjelpe individuell nettleser ytelse. Det vil ikke øke nettverksutnyttelsen på noen måte. Når nettleseren gjengir html-en, vil den begynne å tildele og plassere objekter, og hvis den har eksplisitte instruksjoner om hvordan du tildeler plassen, analyseres oppsettet mens bildet fortsetter å lastes i bakgrunnen. Med moderne nedlastingshastigheter for bredbånd er dette mindre og mindre et problem, men det er fortsatt merkbart. Hvis du noen gang har gått til en side med mange bilder (http://www.skysports.com/ er et eksempel) som ikke eksplisitt angir bildestørrelser, vil du legge merke til at siden hopper og hopper når bilder lastes inn i dom og nettleseren oppdaterer grensesnittet for å kompensere for den nye størrelsen. Med eksplisitt bildestørrelse blir denne hoppende opplevelsen eliminert. På mange CMS-nettsteder kan imidlertid ikke størrelsen på bildet være eksplisitt kjent hele tiden, så denne oppførselen kan være uunngåelig.

Hvis du vet størrelsen på bildet, skader det ikke å sette det der inne, selv om du kanskje ikke ser noen "reell" gevinst på det heller.

EDIT - som en annen test, kan du prøve den med 2 forskjellige sider ved hjelp av "lorem ipsum" -tekst pakket rundt et stort bilde (4 MB eller så?). Siden det ikke er noen reell måte bildet kan lastes raskt på (med mindre det er hurtigbufret), bør du merke en forskjell i visningsadferd mellom de eksplisitte og ikke-eksplisitte sidene.

  • jeg tror noen bildestørrelse kan være kjent på forhånd fordi du kan sjekke serversiden (f.eks. getimagesize() i PHP) før du genererer HTML.
  • @DisgruntledGoat - Det avhenger av CMS, språket som brukes, verktøy tilgjengelig osv. Det kommer også an på hvor mye overhead du vil legge til et nettsted bare for å bli kvitt en mindre hoppighet. Det gjelder heller ikke CSS-spesifiserte høyde- / breddeattributter.
  • @DisgruntledGoat: Hvis du sjekker med PHP bare for å legge størrelsen i en img-tag, vil nettstedet ditt faktisk bli tregere.
  • @webjunkie: Det er ikke en stor ytelseshit med mindre du gjør det mange ganger på hver side. (Og med caching som forsvinner.) @Joel: Sant, jeg påpekte bare at det kan gjøres i de fleste / alle CMS, ikke antyder at det er. Selv om jeg tror at de fleste CMS vil legge til bredde / høyde når du legger til et bilde på en side - som direkte attributter i koden, ikke generert på hver sideinnlasting.

Jeg vet ikke om faktiske ytelsesgevinster, men det hjelper malingstid for nettlesere, noe som gjør at applikasjonen virker raskere for brukeren. Ikke undervurder et snappier brukergrensesnitt når det gjelder hvordan søknaden din oppfattes.

  • Rett, den delen kan jeg få, men jeg får ikke hvorfor krom plasserer dette forslaget i nettverksutnyttelseskategorien.
  • Jeg er ikke sikker på hvorfor det er der heller. Det ser ikke ut til å være det mest nøyaktige stedet.
  • @Chris: Den eneste grunnen til at det kommer opp i tankene er kanskje nettlesere bestemmer hvilken rekkefølge de laster ned bilder basert på størrelse, for eksempel for å laste ned mindre bilder først slik at siden ser mer "komplett" ut. Eller hvis størrelsen på andre bilder betyr at ett bilde er "under folden", vil det ikke laste det ned før sist.
  • @Misfornøyd: Interessante tanker, jeg skal se nærmere på dette.

fungert for deg: Charles Robertson | Ønsker du å kontakte oss?