Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 10:49 27.05.24 
Клубове/ Компютри и Интернет / XML Всички теми Следваща тема Пълен преглед*
Информация за клуба
Тема Re: SAX vs. DOM [re: FloOoD]
АвторJAD (Нерегистриран) 
Публикувано03.07.02 01:03  



Pri nas sashto vaji definiciqta ti za "optimalno reshenie" i tai kato nqmq vreme za nova implementaciq, nie popravqme starata i otlagame za po-dobro reshenie, kogato ima vreme.

V sluchaiq trqbvashe da ostanem s DOM, okaza se che SAX obrabotva po-bavno, kogato stava duma za 1500 documenta. Ogromnoto predimsto na SAX e razhoda na pamet - 60% po-malko v nashiq sluchai, no pochti 3 pati po-bavno. Golqma chast ot coda razchita ma DOM metodi i obekti, za da go prenapishem za SAX sigurno shteshe da ni trqbva oshte tolkova vreme.

Pri nas se poluchi mnogo dobra caching sistema i go preporachvam na vseki, koito ima podobni problemi. Vednaj kachen v pametta vseki dokument go indeksirame s unique key i palnim edna Hash tablichka. Predi vsqko izvikvane, proverqvame dali veche ne sashtestvuva tozi kluch i samo ako go nqma, se sazdava nov key, a DOM parsva nov dokument.

V rezultat na vsichko tova, malko se uvelichi razhoda na pamet, no pak ostana postoqnen vav vremeto. Razbira se napravihme i mnogo drugi promeni, koito ne sa svarzani s XML, a poveche Java, no shte gi nahvarlqm nabarzo.

Osnovniq problem s pametta se okaza nepravilnoto izpolzvane na String. Zamenihme String obektite sas StringBuffer i metoda append(), sled koeto neshtata drastichno se promeniha v polojitelna posoka. Na men malko ne mi e qsna ideqta na serializiraneto i deserializiraneto, no imam chuvstvoto che tuk e imalo znachenie, nezavisimo che i dvata classa nasledqvat Serializable.

Inicializirahme i null-irahme vsichki novi ili veche ne izpozvani obekti, koeto pomaga pri izvikvaneto na gc(). Izvikvame Garbage Collectora vseki pat kogato razhoda na pamet nadvishi opredeleno nivo.

Sazdadohme i initial Caching, t.e. generirame parvonachalen cache za da ne se poluchava parvichno zabavqne, kogato za parvi pat se otvarq dadena stranica.

Obshto vzeto tova e. Drugite neshta baha neznachitelni.

Interesno mi e, kakvo tochno predstavlqva Serealiztora koito si napravil i ako mojesh da kajesh kakvo tochno pravi i kakav e smisalat ot nego. S udovolstvie bih poglednal coda ot chisto liubopitstvo, no edva li shte moga da se vazplzvam ot nego bez da znam prilojenieto mu, a to mi e dosta matno.



Цялата тема
ТемаАвторПубликувано
* SAX vs. DOM JAD   20.05.02 16:49
. * Re: SAX vs. DOM lvo   21.05.02 11:12
. * Re: SAX vs. DOM JAD   21.05.02 23:27
. * Re: SAX vs. DOM Bepa   25.06.02 12:17
. * Re: SAX vs. DOM JAD   02.07.02 23:43
. * Re: SAX vs. DOM FloOoD   28.06.02 00:40
. * Re: SAX vs. DOM JAD   03.07.02 01:03
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2024 Dir.bg Всички права запазени.