Zennoposter зависает при длительной работе с проектом

Blazelip

Client
Регистрация
01.05.2016
Сообщения
99
Благодарностей
5
Баллы
8
Форумчане, вечер добрый, был бы благодарен за наводку или совет.

Давно борюсь с одной проблемой, есть браузерный проект. Базовые аспекты оптимизации шаблона соблюдены: картинки, Флеш отключены, отображение содержимого в браузере тоже, шаблон делался с умом и сообразительностью, вроде, но это не точно.

Логика его следующая, он берёт из довольно большого(2кк) списка почту с удалением, проверяет её на валид, затем кладёт её в определённый файл, исходя из валидации, так делает 50 раз и прекращает работу. Проект "зациклен снаружи" с помощью бесконечного добавления выполнений (Сколько делать - Бесконечно). Таким образом, 20 потоков постоянно работают (по 5 потоков на процесс)

Проблема: спустя пару часов такой работы, компьютер начинает всё медленее и медленее реагировать (зависает), блокнот даже открыть не могу. Выполнение проектов также замедляется, хоть и продолжает выполняться.

Изначально, я вообще не мог найти гипотезы таким явлениям, однако сейчас обратил внимание, что после пары часов открутки, открывая Диспетчер задач, я вижу вместо 4 работающих процессов (20/5=4), , я вижу 7-8, поэтому выдвинул гипотезу (гипотезу нужно проверять), что появляются лишние процессы, возможно остаются от отработавших потоков, которые, собственно и нагружают железо, простаивая и не закрываясь, но с другой стороны, в том же диспетчере задач поедание ресурсов: ЦП - 50%, РАМ - 70-80%, а это значит, он не на максималках, поэтому пока сомневаюсь в гипотезе. Также косо поглядываю на HDD, может он не тащит выполнять такой поток данных, ибо в одну секунду выполняется около 7-10 действий.

Сразу аттачу скрины своего железа, настроек вкладки Инстанс и диспетчера задач до кучи. Шаблон прикрутить не могу, к сожалению.
 

Вложения

Последнее редактирование:

budora

Client
Регистрация
13.08.2012
Сообщения
831
Благодарностей
556
Баллы
93

Blazelip

Client
Регистрация
01.05.2016
Сообщения
99
Благодарностей
5
Баллы
8
Возможно неправильно прочитал, что понимаем под циклом.
То есть у меня два цикла в логике:
1 внутри проекта - т.е. сделал 50 действий, финишируй, чтобы инстанс не перезагружать на горячую.
2 - Снаружи - он постоянно по завершении работы потоков добавляет новые выполнения.
 

budora

Client
Регистрация
13.08.2012
Сообщения
831
Благодарностей
556
Баллы
93
Вариант попробовать вынести по одному потоку на процесс.
 
  • Спасибо
Реакции: Blazelip

Blazelip

Client
Регистрация
01.05.2016
Сообщения
99
Благодарностей
5
Баллы
8
Вариант попробовать вынести по одному потоку на процесс.
Рассматриваю этот вариант, сейчас уже позднее время, но завтра потестирую, хотя меня всегда останавливало то, что моторчик у меня слабоват для выделенных процессов или я ошибаюсь?
 

budora

Client
Регистрация
13.08.2012
Сообщения
831
Благодарностей
556
Баллы
93
Судя по скрину это ноутбук. При 20 потоках возложено просто перегрев.
 
  • Спасибо
Реакции: Blazelip

Sobesednic

Client
Регистрация
24.12.2012
Сообщения
391
Благодарностей
77
Баллы
28
нужно разбивать файл "довольно большого(2кк) списка почт"
 
  • Спасибо
Реакции: Blazelip

Blazelip

Client
Регистрация
01.05.2016
Сообщения
99
Благодарностей
5
Баллы
8

Blazelip

Client
Регистрация
01.05.2016
Сообщения
99
Благодарностей
5
Баллы
8

Чешир

Client
Регистрация
27.06.2014
Сообщения
1 634
Благодарностей
963
Баллы
113
80 проц. РАМ это уже считай предел, это уже свопинг и в хвост и в гриву.
Вместо 50 попробуй 20. Файл, как уже сказали, разбивай.
Пусть будет отдельный проект, который соточку кил будет в новый файл перебрасывать по мере надобности.
Ну и 4 гб РАМ - это маловато.
Докупи.
Стоит копейки, сразу облегчение наступит
 
  • Спасибо
Реакции: Blazelip

Чешир

Client
Регистрация
27.06.2014
Сообщения
1 634
Благодарностей
963
Баллы
113
Вариант попробовать вынести по одному потоку на процесс.
Сразу возрастет потребление памяти процентов на 15. Хотя скорость работы прибавится... т.е. она прибавилась бы, если бы память была. А в твоем случает только хуже будет.
Как ни крути, а память докупать надо
 

Dimazzan

Client
Регистрация
05.11.2014
Сообщения
341
Благодарностей
127
Баллы
43
Аналогичная как у автора, только начинаются проблемы раньше и быстрее прогрессирует, спустя час на сервере работать нереально, если мониторить нагрузку на ЦП, то она постоянно растет в течении часа, при том же количестве потоков
 
  • Спасибо
Реакции: Blazelip

orka13

Client
Регистрация
07.05.2015
Сообщения
2 177
Благодарностей
2 184
Баллы
113
Нагрузку на HDD смотрите. У ноутов они очень медленны относительно обычных HDD, молчу про SSD.
Ну и как писали выше - температура. В той же Aida (Everest) что на скринах зайдите в меню "Сервис - Тест стабильности...", там удобно смотреть температурное движение. При повышении температуры ноут повышает обороты вентиляторов. Если не помогает, то некоторые ноуты сбавляют частоту CPU, если умеют. У некоторых это коряво происходит, и в итоге такие непонятные тормоза, хотя по диспетчере если смотреть, то все ок на момент глюков.
 
  • Спасибо
Реакции: Blazelip

VladZen

Administrator
Команда форума
Регистрация
05.11.2014
Сообщения
22 453
Благодарностей
5 912
Баллы
113
Сколько весит файл списка? ProjectMaker не подвисает просто при открытии проекта с ним?
Снята ли вот эта галочка в настройках. Потому что если сам файл на несколько метров, еще и для него темпы будут создаваться, то я не удивлюсь, что в многопотоке шаблон будет виснуть.
Безопасно сохранять файлы.png
 
  • Спасибо
Реакции: Blazelip

Blazelip

Client
Регистрация
01.05.2016
Сообщения
99
Благодарностей
5
Баллы
8
Наиболее крупные файлы списка весят по 25 мб (исходный - из него беру почты) и 35 мб (второй с валидацией - туда кладу).
Чекбокс "Безопасно сохранять файлы" не стоит, конечно же. При открытии этих списков в ПМке подвисает немного
 

VladZen

Administrator
Команда форума
Регистрация
05.11.2014
Сообщения
22 453
Благодарностей
5 912
Баллы
113
Наиболее крупные файлы списка весят по 25 мб (исходный - из него беру почты) и 35 мб (второй с валидацией - туда кладу).
Чекбокс "Безопасно сохранять файлы" не стоит, конечно же.
Если это txt файлы, то размер слишком большой. Надо разбивать.
 
  • Спасибо
Реакции: Blazelip

Blazelip

Client
Регистрация
01.05.2016
Сообщения
99
Благодарностей
5
Баллы
8
Если это txt файлы, то размер слишком большой. Надо разбивать.
Да, это текстовики, исходный уже разбил до 2мб (200к строк), вроде стало полегче, сейчас ещё валидированный разобью.
 

KitKat21

Client
Регистрация
02.05.2017
Сообщения
263
Благодарностей
191
Баллы
43
I'm running large scraping jobs. I started by doing one project with many threads and getting URLs from a txt file (over 37mb).
After a few hours or even a few minutes, the txt file would get corrupted and the project would die.
I tried with a small txt file but same issue. Even tiny txt file of 300KB.
For me I think the issue was too many threads at the same time going to the same txt file.

Perhaps there is another way to solve it, but for me simply breaking the txt file and making many Zenno projects (thread1_project name, thread2_project name, etc.) solved it.
It's been running without issues already a week now.
 

KitKat21

Client
Регистрация
02.05.2017
Сообщения
263
Благодарностей
191
Баллы
43
I'm not a computer expert or even Zenno expert but there's something I've noticed that maybe will help you:

I bought powerful servers at many providers and even a new computer for Zenno to run on. They all have a more recent version of windows than my older Mac computer.
Although the servers and the new computer have a lot of power (ram, cpu, graphics card etc) than my older computer, I was unable to run more than 6 threads in one go (compared to 20 on my computer)! Even servers which cost $ 500 USD per month ... crazy.

I found there's a thing called "windows search indexer".
Even when Zenno is not working and no program or browser open, this windows search indexer was using sometimes 20% sometimes even 50% of RAM and CPU for nothing!
Therefore, Zenno could not run properly on many threads.
The moment I disabled "windows search indexer" in the computer settings, Zenno worked on and many more threads.
 

Кто просматривает тему: (Всего: 2, Пользователи: 0, Гости: 2)