Devel.cz Lupa Měšec Podnikatel Root Zdroják.cz DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Hlavní navigace

Vlákno názorů k článku
Zmenšujeme JavaScript

OneHalf
OneHalf (neregistrovaný) ---.dsidata.sk
18. 3. 2010 20:14

deployment

Zaujima ma ako webdeveloperi v praxi riesia, ze na developer masine je vhodne mat plnu verziu JS suboru a na ostrom srv sa nasadi komprimovana. Hlavne teda v sucinnosti s verzovacim systemom. Pretoze ak mam na developer aj na ostrom srv tzv. working copy (bavme sa o SVN), tak mi hlava nebere ako tieto dve verzie pomocou verzovacieho systemu spravovat.

Idealne by bole, keby sa na ostrom srv okrem toho spojili vsetky JS/CSS do jedineho suboru pre minimalizaciu HTTP rqs.

Vdaka za akykolvek napad.

Franta Kučera aura:90
18. 3. 2010 22:30

Re: deployment

Dávat ty komprimované javascripty do SVN (nebo jiného verzovacího systému) je prasárna.

1) na kompresi bych se asi vykašlal, viz můj příspěvek výše. Pokud ale musí být:

2) dá se dělat nějakým skriptem – při nasazování nové verze spustíš skript, který ty JS zkomprimuje a nahraje na správné místo.

3) nebo by to šlo dělat „online“ – např. servlet, který si po nasazení aplikace načte ty JS to paměti, zkomprimuje nebo spojí do jednoho a pak je posílá klientům

kvr kvr aura:93
19. 3. 2010 9:01

Re: deployment

Hm, buď viz níže, používat na ostrém serveru jiný zdroj (v závislosti třeba na konfiguraci se použije js_dev nebo js_mini).

Druhé řešení je náročnější, ale o řády lepší – v závislosti na uživatelských právech posílat buď původní nebo on-the-fly minifikovanou verzi, tak lze třeba i na ostrém serveru použít debug verzi pro vybrané uživatele (developery).

To druhé řešení používáme a pohodlí / ušetřený čas se nedá ocenit. Výše popsané je asi 1/10 věcí, mj. se js upravuje v rámci lokalizace, řeší drobné nekompatibility s IE (např. čárky za posledním prvkem pole či hash), dynamický class-loader atd.

Michal Aichinger
19. 3. 2010 10:15

Re: deployment

Pokud máte deployment řešet jinak než ručním kopírováním souborů přes ftp, tak skriptem všechny JS (případně i CSS) soubory concatnete a proženete KJSCompressem, jak jsem odkazoval výše. Na ostrém serveru musíte mít konfigurací zajištěno, že se budou vydávat tyto soubory a ne nekomprimované, tedy v šablonách bude nutná nějaká podmínka dle konfigurační direktivy.

Zasílat nově přidané příspěvky e-mailem