[OT:] Rychlost javascriptu v IE (bylo Re: komprese stringu)

Jaroslav Buchta jaroslav.buchta na hascomp.cz
Neděle Září 18 07:46:39 CEST 2011


Zjistit verzi prohlizece a u tech problematickych nejak zjednodusit 
vizualizci dat? Nakonec zakaznik muze v tomto pripade upgradovat 
prohlizec nebo prejit na jiny. Mimochodem, jak jsou na tom WinCE, 
WinMobile a Android?

Dne 18.9.2011 3:43, Pavel Kutina napsal(a):
> Tak experiment se zdaril, pacient zemrel...
>
> Sice jsem stlacil prenasena data na rozumnou velikost, ale narazil 
> jsem o krok dale, a to na rychlost, resp. vypocetni vykon nutny pro 
> zpracovani retezce javascriptem.
>
> Jakkoli je to nehezke, mam na strane klienta tabulku, citajici cca 500 
> radku, kazdy radek je inikatni a ma vygenerovane unikatni ID. Data se 
> na serveru meni, ja prenasim pres XMLHttpRequest (IE komunikuje pres 
> "svoji" implementaci AJAXu pres ActiveXObject) nejaky popisovaci 
> soubor, na strane klienta pomoci GetElementByID nastavuju par 
> drobnosti, jako je barva pozadi a viditelnost nekterych prvku.
>
> Problem je s rychlosti a narocnosti zpracovani. Na "normalnich" 
> prohlizecich (Firefox, Mozilla, Chrome, Opera) nemam problem a 
> zpracovani na zatezi procesoru nevidim (testovano na ruznych PC a OS 
> od WinXP na mobilnom Celeronu na 1.8GHz az po Win7 64bit s nejakym 
> tlustym dvoujadrem) a vsechno chodi jak ma, na lokalni siti jsem 
> schopnen aktualizovat data i nekolikrat za vterinu (jinak "best of" je 
> Chrome, tam to pracuje s prakticky neznatelnymi prodlevami, nechapu, 
> jak to delaji).
>
> Problem je, kdyz to otevru ve starsim IE. IE 9 take nema problem, ale 
> ty starsi (IE 8 a 7, predpokladam, ze i 6, ale nemam ho ted po ruce) 
> na zpracovani tehoz skriptu sezerou veskery strojovy cas radove na 
> sekundy - a v "idealnim" pripade i nafurt a nezbyva, nez IE sestrelit.
>
> Pokud necham prakticky prazdnou smycku a delam jen dotaz serveru a 
> nasledne parsovani dat, nema problem ani IE, takze je videt, ze 
> zpracovani zvlada. Jakmile ale sahnu na naprosto libovolny vizualni 
> styl (a treba 50x ho zopakuju, resp. nastavim u padesati elementu), 
> jde do tuheho a zatez leti prudce nahoru. Kdyby to delaly vsechny 
> prohlizece, pochopil bych, ze je to slepa cesta, ale proc se to sype 
> jen v IE7 a 8? Chapu, ze stylovani takoveho baliku dat je asi malicko 
> nadstandardni, ale zakaznik by to chtel mit implementovane a ja bych 
> mu rad vyhovel - tim spis, kdyz vidim, ze to v nekterych prohlizecich 
> jede bez problemu a technicky to zrejme realizovatelne bude.
>
> Nemate nekdo tip?
>
> Diky.
>
> Pavel Kutina
>
>
> ----- Original Message ----- From: "Pavel Kutina" <hw na prelude.cz>
> To: "HW-news" <hw-list na list.hw.cz>
> Sent: Wednesday, September 14, 2011 12:55 AM
> Subject: Re: ] komprese stringu
>
>
> Experiment dopadl vcelku uspesne, jak PHP, tak javascript umeji prevadet
> primo funkci do maximalniho zakladu 36. Overil jsem na testovacich 
> datech,
> ze tudy cesta vede.
>
> Diky za pripomenuti base64, overil jsem, lec alespon v PHP se  standardni
> fce chova malicko jinak, nez bych cekal a data spis pribyvaji, ale uz 
> nemam
> silu to zkoumat. Zaklad 36 prozatim vyhovuje (a ve stanovenem rozsahu
> 000001 - 599999 nepretece, vysledek je ctyrbajtovy), dal se uvidi.
>
> Diky vsem za pomoc.
>
> Pavel Kutina
>
>
> ----- Original Message ----- From: "Jindroush" <kubecj na asw.cz>
> To: "HW-news" <hw-list na list.hw.cz>
> Sent: Wednesday, September 14, 2011 12:36 AM
> Subject: Re: ] komprese stringu
>
>
> Proc nejaky zhuverily 62, kdyz base64 je provereny (a nepatrne 
> uspornejsi).
>
> Pokud jsou ta cisla opravdu definovana jako 0-999999, daji se seskladat
> do retezce shiftovanim po 20 bitech. Ale netusim, zda ty shifty umi ten
> js, ale nejak by se to obechcat asi dalo pres maskovani a nasobeni.
>
> On 13.9.2011 22:51, Pavel Kutina wrote:
>> Diky, ja to mezitim pochopil, akorat zkusim dovest usporu k dokonalosti
>> a pouziju soustavu se zakladem 62 (k interpretaci 0..9, a..z, A..Z), to
>> by mohla byt dobra cesta.
>>
>> Diky za nakopnuti, jdu experimentovat.
>>
>> Pavel Kutina
>>
>> ----- Original Message ----- From: "Marek Suba" <suba.marek na seznam.cz>
>> To: "'HW-news'" <hw-list na list.hw.cz>
>> Sent: Tuesday, September 13, 2011 10:42 PM
>> Subject: RE: ] komprese stringu
>>
>>
>> Vas string '123456' -- 6 byte
>>
>> Prevod do BCD 0x12 0x34 0x45 - 3byte
>>
>> Pokud se jedna jen o cisla tak se velkost dat zmensi na polovinu
>>
>> -----Original Message-----
>> From: hw-list-bounces na list.hw.cz [mailto:hw-list-bounces na list.hw.cz] On
>> Behalf Of Pavel Kutina
>> Sent: Tuesday, September 13, 2011 10:23 PM
>> To: HW-news
>> Subject: Re: ] komprese stringu
>>
>> Asi uz mam opravdu vygumovano, ale jak prevodem do BCD usetrim misto, 
>> resp.
>> zkratim prenasena data?
>>
>> Pavel Kutina
>>
>> P.S.: Tak jsem si tak udel predbezne nasobeni a vychazi mi, ze pri
>> projektovane zatezi (v pripade, ze se mi nepodari stlacit jeden 
>> prenaseny
>> blok pod 3.5kb) vygeneruji uzivatele proti serveru traffic cca 70GB 
>> behem
>> deseti dnu. Prilis se mi to cislo nelibi, otazkou je, jak se bude libit
>> hostingu, na kterem ten web pojede (to, kde a jak mi ten web jede
>> -volny.cz-
>>
>> je bohuzel dane a nehnu s tim, ac se o to pokousim jiz nekolik let...).
>>
>>
>> ----- Original Message ----- From: "Marek Suba" <suba.marek na seznam.cz>
>> To: "'HW-news'" <hw-list na list.hw.cz>
>> Sent: Tuesday, September 13, 2011 10:08 PM
>> Subject: RE: ] komprese stringu
>>
>>
>> Pokud se jedna o cisla co pouzit BCD?
>>
>> -----Original Message-----
>> From: hw-list-bounces na list.hw.cz [mailto:hw-list-bounces na list.hw.cz] On
>> Behalf Of Pavel Kutina
>> Sent: Tuesday, September 13, 2011 8:41 PM
>> To: HW-news
>> Subject: [OT:] komprese stringu
>>
>> Zdravim,
>>
>> omlouvam se za OT, ale uz jsem s tim stravil pul dne a rozumny 
>> vysledek mne
>> nejak nepotkal, tak si dovolim zneuzit mistni think tank:
>>
>> Potrebuju skrz web ke klientovi prenest cca 5kb textu, na strane serveru
>> mam
>>
>> pro zpracovani PHP, na strane klienta javascript. Text je jeden dlouhy
>> retezec cisel, je tam pouzito par separatoru (libovolny jiny znak).
>>
>> Protoze se text bude prenaset na pomerne dost pocitacu (cca 30) 
>> jednou za
>> vterinu, docela bych potreboval vyresit nejakou kompresi, kterou budu
>> schopen to na strane serveru PHP zkomprimovat a na strane klienta
>> javascriptem dekomprimovat.
>>
>> Prenos probiha tak, ze server provede echo na stranku, javascript si to
>> odtamtud "slizne" (je to zmrseny AJAX, zkousel jsem XML, ale rezie je
>> neunosna).
>>
>> Nemate nekdo vyzkouseny nejaky vhodny kompresni algoritmus, pripadne
>> knihovny atd.? Diky za kazdy dobry tip a jeste jednou se omlouvam za OT.
>>
>> Pavel Kutina
>>
>> _______________________________________________
>> HW-list mailing list - sponsored by www.HW.cz
>> Hw-list na list.hw.cz
>> http://list.hw.cz/mailman/listinfo/hw-list
>>
>> _______________________________________________
>> HW-list mailing list - sponsored by www.HW.cz
>> Hw-list na list.hw.cz
>> http://list.hw.cz/mailman/listinfo/hw-list
>>
>> _______________________________________________
>> HW-list mailing list - sponsored by www.HW.cz
>> Hw-list na list.hw.cz
>> http://list.hw.cz/mailman/listinfo/hw-list
>>
>> _______________________________________________
>> HW-list mailing list - sponsored by www.HW.cz
>> Hw-list na list.hw.cz
>> http://list.hw.cz/mailman/listinfo/hw-list
>> _______________________________________________
>> HW-list mailing list - sponsored by www.HW.cz
>> Hw-list na list.hw.cz
>> http://list.hw.cz/mailman/listinfo/hw-list
>>
>
>



Další informace o konferenci Hw-list