keskiviikko 14. syyskuuta 2011

VR:n uusi lippukauppa

VR avasi tänään uuden lippukauppansa. Lippukaupan avaus ei mennyt aivan putkeen ja verkkokauppa olikin tänään kaatuneena pitkin päivää. Varmasti ns. Backend-puolella on omat haasteensa, mutta tässä kirjoituksessa käyn läpi ns. frontend-puolen ongelmia VR:n lippukaupassa. Tiedot on haettu YSlow- ja Page Speed -selainlaajennoksilla.

jQuery
jQuery ladataan VR:n verkkokaupassa 2 kertaa. Toinen tiedosto eli jquery-1.4.2.js on täysin turha ja kuluttaa käyttäjän kaistaa turhaan 160 kB. jQuery-plugin-tiedostot kannattaisi myös minimoida jollakin minimointityökalulla.

Tiedostojen pakkaus
Käyttämällä gzip-pakkausta palvelimella sivun ja sivuun liittyvien muiden tiedostojen koko laskisi jopa 392 kB / käyttäjä (72%).

Selaimen välimuisti
Selaimen välimuistia voisi hyödyntää monen tiedoston kohdalla. Tuskin esimerkiksi jQueryn 1.4.2-tiedosto tulee enää koskaan muuttumaan (tai ainakin tiedostonimi vaihtuu).

Staattiset tiedostot
Tiedostoja, jotka eivät muutu koskaan, ei kannata jakaa dynaamisen JSP-palvelimen kautta. Ne kannattaisi jakaa staattisten tiedostojen jakamiseen tarkoitettujen palvelimien kautta. Lisäksi palvelimella on jokin yhtäaikaisten pyyntöjen maksimiraja ja staattiset tiedostot syövät tätä limiittiä. Staattiset tiedostot kannattaisi jakaa myös ihan toisesta domainista, jotta selaimet eivät lähettäisi evästeitä jokaikisen staattisen kuvan tai muun tiedoston kohdalla.

Staattisten tiedostojen yhdistäminen
Jos käyttäjän pitää joka kerta ladata samat JavaScript-tiedostot, miksi niitä ei yhdistettäisi yhdeksi tai maksimissaan pariksi JavaScript-tiedostoksi?

Ai niin, Page Speed antaa pistemääräksi 28 / 100 VR:n verkkokaupalle. Ja miksi huoltokatkosivu on kooltaan n. 256 kilotavua?

Ei kommentteja:

Lähetä kommentti