Страница 1 из 1

Оптимизация работы с памятью

Добавлено: 07 сен 2010, 01:26
zhil
Недавно купил софт, написал свой первый скрипт :)

Скрипт логиниться на сайте и после этого парсит большую базу данных, постоянно кликая на кнопку Next
В базе под миллион объектов (доменные имена), выводятся по 100 штук за раз.

Возникла проблема - нужно сделать порядка 10.000 кликов, чтобы вытянуть базу, но уже после 210 клика размер занимаемой памяти был около 1.7 гига :( из 2 на компе - все начало тупить и свопить.

Настройки позиции хранятся похоже в сесии - урл всегда вида
script.php?step=next
Тоесть, решение вида после х кликов пересоздать браузер, заново залогиниться и продолжить вытягивание не подойдет.

Есть ли какие то варианты по оптимизации памяти без перезапуска браузера? На что она уходит в таком количестве - похоже на баг со сборщиком мусора.

Добавлено: 07 сен 2010, 02:24
zhil
Пытался использовать заплатку вроде

$c = $browser->get_cookie();
$browser->recreate();
$browser->set_cookie($c);

пересоздание вообще не помогает с памятью - только полный перезапуск емулятора :(

Добавлено: 07 сен 2010, 13:08
bigfozzy
Вообще скорее всего это баг IE при работе с памятью - есть там такое ..
И от этого одно лекарство - перезапуск браузера, хотя можно еще попробовать с навигацией на другую простую страницу и потом GoBack ...

А что за функции используются в цикле - можно список - прогоним на полигоне в цикле и если там есть утечки памяти - то исправим.

Спасибо.

Добавлено: 12 окт 2010, 01:28
bigfozzy
сейчас все должно быть гораздо лучше )