|
|
|
Сбор XML съедает всю память сервака. Как избежать этого ?
|
|||
|---|---|---|---|
|
#18+
Добрый день. Пользуюсь dom4j для сборки XML документа. В документе 50тыс записей, по 40 тэгов в каждой. Чтобы java отработала, приходится запускать ее с параметрами -Xmx300m (увеличиваю размер кучи). таким образом съедается почти вся память сервака. Документ может расти и дальше. Можно ли собрать большой XML документ не увеличивая размер кучи ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2006, 12:42:49 |
|
||
|
Сбор XML съедает всю память сервака. Как избежать этого ?
|
|||
|---|---|---|---|
|
#18+
Ага. Есть такая проблема. Если XML документ очень большой - лучше пользоватся не объектными а поточными (stremeable) средствами для его формирования. К сожалению темой XML сериализации я занимался в технологиях .Net. Но ... думаю, что в Java должен быть аналог классу XmlTextWriter. Правда есть несколько ограничений. Вы должны подготовить данные в том порядке, в котором они упадут в отчет. И ... естесственно нельзя будет пользоватся трансформацией. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2006, 13:57:08 |
|
||
|
Сбор XML съедает всю память сервака. Как избежать этого ?
|
|||
|---|---|---|---|
|
#18+
Добавлю: ищи SAX ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2006, 14:12:50 |
|
||
|
Сбор XML съедает всю память сервака. Как избежать этого ?
|
|||
|---|---|---|---|
|
#18+
сах для чтения а не записи. Проще всего тупо парсить и писать в файл текст. Делов-то ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2006, 14:42:30 |
|
||
|
Сбор XML съедает всю память сервака. Как избежать этого ?
|
|||
|---|---|---|---|
|
#18+
1024сах для чтения а не записи. Проще всего тупо парсить и писать в файл текст. Делов-то - сердце мне подсказывает, что автору топика нужно именно чтение :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2006, 15:07:47 |
|
||
|
Сбор XML съедает всю память сервака. Как избежать этого ?
|
|||
|---|---|---|---|
|
#18+
Если просто записать данные в XML-файл, так для этого достаточно out.println(). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2006, 15:30:41 |
|
||
|
Сбор XML съедает всю память сервака. Как избежать этого ?
|
|||
|---|---|---|---|
|
#18+
Да.мне нужно именно писать в файл. Дело в том, что DOM проверяет правильность заполнения полей на предмет спецсимволов и корректирует ежели что. Иначе придется заботится об этом самому. Остался пока на большой куче... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2006, 16:59:45 |
|
||
|
Сбор XML съедает всю память сервака. Как избежать этого ?
|
|||
|---|---|---|---|
|
#18+
Для записи годится StAX. Как и SAX, является потоково-ориентированным. Использование DOM подразумевает, что объект документа создаётся в памяти, сл. её расход может быть большим. То есть метод работы с XML выбирается в зависимости от задачи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2006, 21:58:13 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=34133287&tid=2147479]: |
0ms |
get settings: |
10ms |
get forum list: |
22ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
168ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
63ms |
get tp. blocked users: |
2ms |
| others: | 275ms |
| total: | 560ms |

| 0 / 0 |
