скрипту нехватает памяти

Тема в разделе "Как сделать...", создана пользователем sympler, 28 июн 2010.

Статус темы:
Закрыта.
  1. sympler

    sympler Постоялец

    Регистр.:
    24 окт 2008
    Сообщения:
    131
    Симпатии:
    6
    скрипту при выполнении необходимо больше 128 метров (парсит много сайтов) , насколько знаю больше 128MB в php.ini не поставишь либо хостер не даст,

    собственно как найти переменные которые съедают почти всю память и удалить их с помощью unset()???
    Переменные внутри фукнций необходимо удалять? или они не съедают память после выполнения функции?
     
  2. /Montana

    /Montana Постоялец

    Регистр.:
    28 май 2008
    Сообщения:
    119
    Симпатии:
    6
    Зачем писать такой скрипт, который толком не сможет работать на большинстве систем.
    Что за скрипт? Может стоит отписать разработчику?
     
  3. dandandan

    dandandan

    Регистр.:
    7 авг 2008
    Сообщения:
    975
    Симпатии:
    255
    Переменные внутри функций действуют только внутри функций. После завершения функции переменная удаляется. Однако, внутри функции переменная может занимать памяти больше 128 мб :).
     
    sympler нравится это.
  4. bork75

    bork75 Д☼брая собака )

    Регистр.:
    21 июн 2008
    Сообщения:
    1.449
    Симпатии:
    716
    У меня был один новостной сайт, который тоже использовал скрипт-парсер. Такие скрипты действительно едят много ресурсов и подвешивают сервер.

    Решение было очень простое - скрипт был размещён локально на простом денвере. Скрипт парсил новости, а потом просто всё сливалось на мой сайт. Раз в 3 часа.
     
  5. CrashX

    CrashX В прошлом XSiteCMS

    Регистр.:
    6 июн 2008
    Сообщения:
    682
    Симпатии:
    112
    используй дисковый кэш (тут нужно поломать голоу но возможно), за памятью следи... переменные обязательно очищай даже маленькие...
     
    sympler нравится это.
  6. sympler

    sympler Постоялец

    Регистр.:
    24 окт 2008
    Сообщения:
    131
    Симпатии:
    6
    разработчик я :) скрипт еще в разработке ))))

    видимо в этом и есть причина ))
    делаем
    не подходит у меня фукнция внутри использует больше 128 метров, буду удалять переменные, начну с самых больших.
     
  7. CrashX

    CrashX В прошлом XSiteCMS

    Регистр.:
    6 июн 2008
    Сообщения:
    682
    Симпатии:
    112
    если использовать дисковый кеш, то проблем не должно быть, кроме времени исполенния тк оно возрасте сильно...

    Добавлено через 1 минуту
    при создании дискового кеша, свего рода своп фаила нужно следить за буффером, если будет утечка)) будет весело...
     
  8. sympler

    sympler Постоялец

    Регистр.:
    24 окт 2008
    Сообщения:
    131
    Симпатии:
    6
    предлагаешь записывать все в файлы или как?
     
  9. CrashX

    CrashX В прошлом XSiteCMS

    Регистр.:
    6 июн 2008
    Сообщения:
    682
    Симпатии:
    112
    да, именноетак, дисковый кеш, только такой и бывает)))
    если маяти мало нужно использовать другме ресурсы, только теперь вопрос как их хранить
    как только получаете данные их сохранять, и тп... в общем как используется ОС
     
    sympler нравится это.
  10. diavolic

    diavolic

    Регистр.:
    17 мар 2010
    Сообщения:
    522
    Симпатии:
    102
    выдели парсинг каждого сайта в отдельную функцию, выход с нее обрабатывай сразу - например ложи в базу данных, а потом уже в базе можешь запросами извращаться как угодно.
     
    sympler нравится это.
Статус темы:
Закрыта.