@mask да мне не надо, помогаю по мере желания. А так получается что я буду обязан. Я и так уже дал подсказки
Нагрузка на CPU
-
Как админ и попросил переношу мой вопрос в отдельную тему.
Память 80 - 82% а CPU 99%... запущены всего 2 однопоточных скрипта с минимумом действий... даже не знаю в чём может быть проблема. Сервер от амазона (1гб памяти если правильно помню...)
Админ предложил запустить профайлер и проверить, что занимает больше всего процессорного времени... поискал в Гугле (нет, может конечно я плохо искал) но ничего полезного для себя не нашёл... по этому задам вопрос тут: что такое профайлер? и как его запустить? :) -
@aveko
тут то еще общество анонимных телепатов, но все же: Need more information
неправильно составленная регулярка если приложить значительные усилия может привести к отказу в обслужвании.
может скрипты загруженной страницы что-то неистово считают.поиск "профайлер" вероятно вернет о специально обученyых людях которые сидят на границе и внимательно смотрят на лицо.
"профилирование кода" я думаю -
Приходилось ставить клиенту скрипт на амазоновский сервак, как раз такой как у вас 1гб озу и 1 ядро.
1 скрипт постоянно взаимодействующий со сложной страницей браузера грузит цп почти полностью и это норма, обычный хром будет вести себя точно так же, с уверенностью можно предположить что вам даже повезло запустить 2 скрипта если там есть работа с браузером. -
Может кто-то запустить этот браузер на данном железе?
http://opensource.spotify.com/cefbuilds/cef_binary_3.3396.1778.g628b9db_windows64_client.tar.bz2
-
Проверил использование CPU браузером. Не могу сказать, что браузер БАС дает больше нагрузку чем обычный.
Что пробовал:- Смотрел отчет по процессору в разных потоках. Основная нагрузка приходится на браузерные потоки. Примерно 20-30% от общей нагрузки процесса приходится на один поток, который создает БАС. В нем есть вызов CefDoMessageLoopWork, функции, которая обрабатывает все, что связанно с браузером. Стал вызывать ее реже и нагрузка упала до 5%. Выборочно смотрел стек, все после CefDoMessageLoopWork не мой код. Есть вероятность, что иногда из этой функции вызывается и мой код, который и дает нагрузку на проц, поэтому идем дальше.
- Запускал профайлер sleepy, отчет показал, что больше всего времени тратится на создание потоков. Браузер действительно часто любит создавать и убивать потоки, возможно это может стать вариантом для оптимизации, но не факт, что я смогу изменить это поведение. БАС точно не создает потоки динамически.
- Сделал простой проект, который водит мышью по странице в БАС и сделал тоже самое в стандартном браузере CEF руками. Результаты для БАС 1-3%, для CEF ~ 2.4%. Иногда и CEF и BAS скачут до 5%. Но это бывает редко.
- Начал редактировать код, убрал все места, которые могут давать нагрузку. Лок потоков, вычисление координат мыши, абсолютно все что связанно с отрисовкой. Все это никак не повлияло на производительность.
- Оставил проект на пару часов без перезапуска потоков. Нагрузка на цпу не менялась со временем.
Все это не является доказательством, что БАС не добавляет где-то использование цпу, но в данный момент я не вижу серьезной разницы с CEF по производительности.
-
@support , попробовал запустить на 6 ядрах с 1 гиг рам, таже ошибка при этом процессор максимально поднимался до 20 %. система вин серв 2012 r2
если нужно могу дать rdp для тестов на этом серве, у меня ничего там моего не крутится, сервак абсолютно свободен.


