Главная
Форум
Контакты
Купить
Поддержи проект
Поиск
Искать:
Расширенный поиск
[Закрыть]
Правила форума
Войти
Регистрация
Russian
English
HandyCache форум
Главная категория
»
Общие вопросы
»
Как настроить HC для уменьшения нагрузки на процессор?
Имя пользователя:
1 час
1 день
1 неделя
1 месяц
Навсегда
Пароль:
Страниц:
1
2
[
3
]
4
5
...
7
Вниз
« предыдущая тема
следующая тема »
Отправить эту тему
Печать
Автор
Тема: Как настроить HC для уменьшения нагрузки на процессор? (Прочитано 88334 раз)
0 Пользователей и 1 Гость смотрят эту тему.
DenZzz
Модератор
Репутация: +179/-11
Offline
Сообщений: 5589
Re: HC сильно грузит процессор, ест память и притормаживает систему!
«
Ответ #40 :
18 февраля 2008, 23:07:37 »
sergo
А какова у тебя нагрузка на HC? Сколько запросов приходит к HC одновременно? Сколько пользователей обслуживает HC?
Если нагрузка на HC не велика и перечисленные на первой странице в этой теме меры не помогают, то совершенно непонятно, чем вызвана твоя аномалия! Видимо, что-то с чем-то конфликтует. Попробуй поотключать другие программы и выяснить с чем происходит конфликт. Начни с антивируса и своего translite...
P.S. При старте HC должен занимать не больше 8-12 Мб. В процессе работы каждый новый поток может отъесть еще по несколько мегабайт. В последствии неиспользуемые потоки удаляются, память освобождается. Так должно происходить и происходит у большинства пользователей. То, что происходит у тебя - это аномалия неизвестной природы...
«
Последнее редактирование: 18 февраля 2008, 23:24:00 от DenZzz
»
Сообщить модератору
Записан
sergo
Постоялец
Репутация: +5/-1
Offline
Сообщений: 112
Re: HC сильно грузит процессор, ест память и при
«
Ответ #41 :
19 февраля 2008, 09:26:31 »
140-150 МБ при запуске - это общая память занимаемая handycash. в нее входят около 10-12 МБ в оперативке и 130-140 в своп-файле. если даешь нагрузку (открывается одноврменно около 20-30 страниц) то общая память растет гигантскими темпами. при этом основной рост приходиться на своп. у меня он достигал 2 ГБ. по окончании нагрузки общая память со временем но очень долго (десятки минут) уменьшается. после 2 ГБ уменьшалась примерно до 1 ГБ и дальше не хочет.
при выходе из программы эта виртуальная память
медлено
нехотя освобождается. при этом активно работает винчестер. наверно что-то из нее читается и сохраняется на диск. поэтому при выходе из Windows например постоянно появляется окно с бегунком о закрытии handycash.
translite, антивирус и фаервол выгрузил. попробовал перейти в спящий режим. не переходит. перегрузился, выгрузил handycash. в спящий режим система перешла без вопросов.
DenZzz
у тебя в спящий режим компьютер переходит?
Сообщить модератору
Записан
sergo
Постоялец
Репутация: +5/-1
Offline
Сообщений: 112
Re: HC сильно грузит процессор, ест память и при
«
Ответ #42 :
19 февраля 2008, 18:04:03 »
Цитировать
А какова у тебя нагрузка на HC? Сколько запросов приходит к HC одновременно? Сколько пользователей обслуживает HC?
нагрузка из рассчета на одного пользователя. самая пиковая когда вызываю сессию в браузере опера с несколькими десятками страниц. велика она или нет для handycash незнаю. если такая нагрузка не предусмотрена программой то дайте пожалуйста знать - буду искать какуюнибудь другую.
Сообщить модератору
Записан
DenZzz
Модератор
Репутация: +179/-11
Offline
Сообщений: 5589
Re: HC сильно грузит процессор, ест память и притормаживает систему!
«
Ответ #43 :
19 февраля 2008, 19:10:27 »
Цитата: sergo от 19 февраля 2008, 09:26:31
140-150 МБ при запуске - это общая память занимаемая handycash. в нее входят около 10-12 МБ в оперативке и 130-140 в своп-файле.
У меня общая память при старте 8-12 Мб и в процессе работы 1 пользователя редко бывает больше 30 Мб...
А сколько у тебя вообще физической оперативной памяти и сколько ее обычно свободно?
Цитировать
DenZzz
у тебя в спящий режим компьютер переходит?
Переходит. У тебя вполне мог не переходить из-за выгрузки translite, антивируса и фаервол без перезагрузки системы! Лучше вообще отключить их автозапуск и перезагрузиться для чистоты эксперимента!
А что у тебя за антивирус? Web-трафик он сканирует?
Цитировать
translite, антивирус и фаервол выгрузил. попробовал перейти в спящий режим. не переходит.
А HC перезапускать пробовал? Что там было с расходом памяти?
Попробуй грузить HC не автоматически при старте системы, а вручную после автозапуска всех прочих установленных у тебя приложений.
Цитата: sergo от 19 февраля 2008, 18:04:03
нагрузка из рассчета на одного пользователя. самая пиковая когда вызываю сессию в браузере опера с несколькими десятками страниц. велика она или нет для handycash незнаю.
Нет, это не много. Тормозить не должно...
Сообщить модератору
Записан
sergo
Постоялец
Репутация: +5/-1
Offline
Сообщений: 112
Re: HC сильно грузит процессор, ест память и при
«
Ответ #44 :
19 февраля 2008, 19:26:33 »
попробовал разобраться подручными средствами о причине. на каждое соединение с браузером handycash создает отдельный поток и отбирает у памяти окло 9 МБ (чего так много?). установка браузера 128 одновременных соединений. гружу около 40 страниц сразу. на это handycacsh сразу откусывает памяти 128*9МБ=1,15 ГБ. кроме этого к числу соединений прибавляются соединения программы с удаленным сервером. их меньше, но в пиковые моменты может получиться около 100. тоесть еще примерно 900 МБ памяти съедено. итого около 2 ГБ. практически сразу после использования закрывается часть потоков и кусок памяти быстро освобождается. но около 130-135 остается. наверно закрываются и освобождают память только потоки отвечающие за соединения с внешним сервером. а соединения с браузером остаются жить видимо в расчете на новые запросы. вроде бы так и нормально для производительности но 1,15 ГБ памяти у системы временно отняты.
что в каждом соединении ест 9 МБ?
кажется прокси сервер это программа не той категории чтобы захватывать всю имеющуюся память.
уменьшил количество соединений в браузере с 128 до 8. память ест намного меньше около 140-150 МБ. видно и правда в этом проблема. а расчитана ли программа на сеть? если да то число одновременных соединений может быть гораздо больше 128 и будет еще хуже?
PS теперь в спящий режим handycash переходит нормально при включеном антивирусе (drweb) фаерволе (комодо) и translite.
«
Последнее редактирование: 19 февраля 2008, 19:40:27 от sergo
»
Сообщить модератору
Записан
DenZzz
Модератор
Репутация: +179/-11
Offline
Сообщений: 5589
Re: HC сильно грузит процессор, ест память и притормаживает систему!
«
Ответ #45 :
19 февраля 2008, 20:21:55 »
sergo
Почитай тему: "
Управление памятью
" - там есть ответы на твои вопросы, а также есть упоминания, сколько памяти HC расходует у других. Твои цифры почему-то в разы выше - это не нормально...
P.S. Ты пробовал запускать HC вручную после перезапуска системы с отключенным антивирусом, файерволом и translite?
Добавлено: 19 Февраля 2008, 21:18:46
P.P.S. Списки правил у тебя полностью дефолтные или есть самописные и взятые у кого-то?
Сообщить модератору
Записан
sergo
Постоялец
Репутация: +5/-1
Offline
Сообщений: 112
Re: HC сильно грузит процессор, ест память и притормаживает систему!
«
Ответ #46 :
19 февраля 2008, 21:00:43 »
DenZzz
прочел. там похоже только про RAM обсуждается. там все как бы понятно. я говрю не о RAM а о всей виртуальной памяти захваченой handycash. потому и цифры высокие. смотрел на все это с помощью processexplore. посмотри сам любой утилитой. установи при этом много опцию максимального числа одновременнных подключений в браузере. и должен увидеть.
Цитировать
Ты пробовал запускать HC вручную после перезапуска системы с отключенным антивирусом, файерволом и translite?
вот сейчас попробовал. никаких изменений. помаялся и методом проб увидел что система начинает писать про нехватку ресурсов при переходе в спящий режим когда handycash занимает больше 1,5-1,8 ГБ виртуальной памяти. может зависит и от суммы памяти занимаемой всеми прогами вместе. такое может получается когда система превышает место отведенное под свопфайл.
Правила закачаны с вашего сайта.
кстати когда читал названый топик присмотрелся и обратил внимание что расходование RAM дейтсвительно потихоньку накапливается. очень медленно.
«
Последнее редактирование: 19 февраля 2008, 21:09:32 от sergo
»
Сообщить модератору
Записан
DenZzz
Модератор
Репутация: +179/-11
Offline
Сообщений: 5589
Re: HC сильно грузит процессор, ест память и притормаживает систему!
«
Ответ #47 :
20 февраля 2008, 08:37:48 »
Цитата: sergo от 19 февраля 2008, 21:00:43
там похоже только про RAM обсуждается. там все как бы понятно. я говрю не о RAM а о всей виртуальной памяти захваченой handycash. потому и цифры высокие.
Нет, там речь шла про общую память! Система сама решает, когда надо использовать своп-файл и происходит это обычно от нехватки RAM. Влиять на этот процесс HC не может.
Диспетчер задач также показывает общую выделенную память (RAM + Своп). Сколько у тебя там HC занимает при старте? У меня 11 Мб.
Сообщить модератору
Записан
sergo
Постоялец
Репутация: +5/-1
Offline
Сообщений: 112
Re: HC сильно грузит процессор, ест память и при
«
Ответ #48 :
20 февраля 2008, 17:36:30 »
всетаки я про другое. забудь про своп - пожалуй здесь вообще ни при чем, не туда мои мысли повело. эти мега-гигабайты handycash скорее всего резервирует в виртуальной памяти и не использует их. как вариант каждым потоком резервируется непомерно большой стэк либо вызывается virtualalloc для каких-то еще целей. диспетчер задач этого не покажет. если не хочешь поставить processexplorer воспользуйся пуск->выполнить->perfmon->ctrl-i->объект "процесс" выбрать в списке "handycash"->счетчик байтов виртуальной памяти. и сразу увидишь все эти мегабайты.
каждому процессу windowsxp-32 выделяет 2 ГБ виртуального адресного пространства. когда handycash создаст столько потоков что резервируемая виртуальная память начнет превышать 2 ГБ последствия становятся непредсказуемыми. что видно сразу это отказ в установление соединений между браузером и программой, программой и сервером. а может новые потоки вообще не будут создаваться. это критическое количество потоков будет примерно 2ГБ/9МБ=222. то есть при общем количестве одновременно установленных соединений браузер-handycash и handycash-сервер превышающее эту цифру программа не в состоянии работать правильно.
скажи сколько стэка ты отводишь под каждый поток?
«
Последнее редактирование: 20 февраля 2008, 17:42:28 от sergo
»
Сообщить модератору
Записан
mai62
Автор HC
Репутация: +226/-4
Offline
Сообщений: 6383
Re: HC сильно грузит процессор, ест память и притормаживает систему!
«
Ответ #49 :
20 февраля 2008, 18:13:39 »
Цитировать
эти мега-гигабайты handycash скорее всего резервирует в виртуальной памяти и не использует их
На самом деле память не резервируется (ни в ОЗУ, ни на диске), выделяется адресное пространство.
Цитировать
скажи сколько стэка ты отводишь под каждый поток?
{$MINSTACKSIZE $00008000}
{$MAXSTACKSIZE $00800000}
Сообщить модератору
Записан
sergo
Постоялец
Репутация: +5/-1
Offline
Сообщений: 112
Re: HC сильно грузит процессор, ест память и при
«
Ответ #50 :
20 февраля 2008, 18:34:12 »
игра слов. зарезервировать виртуальную память или выделить адресное пространство в чем отличие.
сколько это в байтах? есть ли в каждом потоке вызовы virtualalloc?
опытным путем получил 237 одновременных соединений после чего столбняк. хотя для одного пользователя с браузером в большинстве случаев ресурса вплоне хватит.
«
Последнее редактирование: 20 февраля 2008, 18:40:02 от sergo
»
Сообщить модератору
Записан
cepera_ang
Beta tester
Репутация: +9/-4
Offline
Сообщений: 355
Re: HC сильно грузит процессор, ест память и при
«
Ответ #51 :
24 февраля 2008, 01:33:50 »
Зачем одному пользователю ~240 *одновременных* подключений? 8-16 прекрасно хватает, даже если нужно загрузить сразу сто вкладок в опере, в любом случае упремся в производительность дисковой и сеть. Какой смысл пытаться заставить НС обслужить одновременно сто-двести подключений, если можно обслужить те же запросы последовательно и возможно даже за меньшее время (объяснить почему меньшее?).
Сообщить модератору
Записан
sergo
Постоялец
Репутация: +5/-1
Offline
Сообщений: 112
Re: HC сильно грузит процессор, ест память и при
«
Ответ #52 :
24 февраля 2008, 13:29:45 »
ничего искусственого. настройка оперы 128 соединений и все. как объяснить эту "ненужность" авторам браузера?
интересно почему каждый поток резервирует аж по 9 МБ виртуальной памяти. если это можно уменьшить то было лучше. в противном случае учесть в документации или ФАК. там объяснить ограничения программы. ничего страшного дополнительная полезная информация пользователю - не ставить больше 64 одновременных соединений в браузере.
Добавлено: 24 Февраля 2008, 13:26:50
кстати когда достигнуты этих самые 237 потоков после этого выход из программы вызывает окно с ошибкой и выбором продолжить выйти и перегрузить.
а попытки новых соединений вызывают ошибку winsock 10053 (Software caused connection abort.
An established connection was aborted by the software in your host computer, possibly due to a data transmission time-out or protocol error.)
Сообщить модератору
Записан
DenZzz
Модератор
Репутация: +179/-11
Offline
Сообщений: 5589
Re: HC сильно грузит процессор, ест память и притормаживает систему!
«
Ответ #53 :
24 февраля 2008, 15:00:58 »
Цитата: sergo от 24 февраля 2008, 13:29:45
ничего искусственого. настройка оперы 128 соединений и все. как объяснить эту "ненужность" авторам браузера?
Видимо неспроста авторы Оперы сделали значения "по умолчанию" равными 8/20 соединений...
Зачем ты их трогал? Ради "спортивного" интереса? Так ничего нового ты не открыл! Раньше уже неоднократно упоминалось, что первая версия HC не рассчитана на чрезмерно большую сетевую нагрузку...
Что касается настроек Оперы, то при значениях "по умолчанию" - 8/20 соединений выделяемая виртуальная память по Perfmon у меня обычно около 200 Мб.
Поставил в Опере 128/128 соединений, загрузил сессию в 30 страниц из кэша HC - виртуальная память около 600 Мб, время полной загрузки всех страниц на 10% больше, чем было при настройках 8/20 соединений!
Если при этом еще отключить HTTP 1.1 для прокси-сервера, то виртуальная память становится уже 1,2 Гб и время загрузки страниц увеличивается почти в 2 раза!
Мораль - правильные настройки браузера творят чудеса!
«
Последнее редактирование: 24 февраля 2008, 15:10:49 от DenZzz
»
Сообщить модератору
Записан
sergo
Постоялец
Репутация: +5/-1
Offline
Сообщений: 112
Re: HC сильно грузит процессор, ест память и при
«
Ответ #54 :
24 февраля 2008, 15:25:03 »
Цитата: DenZzz от 24 февраля 2008, 15:00:58
Так ничего нового ты не открыл! Раньше уже неоднократно упоминалось, что первая версия HC не рассчитана на чрезмерно большую сетевую нагрузку...
ну теперь хотя бы известен конкретный числовой порог неопределеной "чрезмерно большой сетевой нагрузки". поэтому польза уже немалая согласись
Цитировать
Мораль - правильные настройки браузера творят чудеса!
возьми настройки 8-20 и сеть из 8-10 человек будет при открытии каждым всего 1-2 страниц производить "чрезмерно большую сетевую активность". только может не надо морали выделять а посмотреть внутрь собственной программы. может имеется возможность и получится убрать резервировыание больших объемов памяти при создании потоков. будет польза. и 128 соединений проблемой не будут. если не получится то написать это в ФАК чтобы до установки программы четко видеть ограничения на ее применение.
«
Последнее редактирование: 24 февраля 2008, 15:43:35 от sergo
»
Сообщить модератору
Записан
cepera_ang
Beta tester
Репутация: +9/-4
Offline
Сообщений: 355
Re: HC сильно грузит процессор, ест память и притормаживает систему!
«
Ответ #55 :
24 февраля 2008, 16:15:05 »
Цитата: sergo от 24 февраля 2008, 15:25:03
возьми настройки 8-20 и сеть из 8-10 человек будет при открытии каждым всего 1-2 страниц производить "чрезмерно большую сетевую активность". только может не надо морали выделять а посмотреть внутрь собственной программы. может имеется возможность и получится убрать резервировыание больших объемов памяти при создании потоков. будет польза. и 128 соединений проблемой не будут. если не получится то написать это в ФАК чтобы до установки программы четко видеть ограничения на ее применение.
Даже если сто человек будут сидеть в опере с настройками по умолчанию практически никогда не будет 200 одновременно установленных подключений! Даже веб-сервера (например Apache) по умолчанию имеют ограничение в 250 максимальных коннектов, а ведь они могут обслуживать тысячи пользователей. Ведь люди не загружают непрерывно по 8-20 потоков данные одновременно. Обычно открыли страничку, читают, открыли другую...
А про выделение больших объемов памяти: это delphi, что еще говорить. Да плюс куча дополнительных компонентов + буферы сетевые, дисковые и т.д.
Сообщить модератору
Записан
DenZzz
Модератор
Репутация: +179/-11
Offline
Сообщений: 5589
Re: HC сильно грузит процессор, ест память и притормаживает систему!
«
Ответ #56 :
24 февраля 2008, 16:37:35 »
Цитата: sergo от 24 февраля 2008, 15:25:03
возьми настройки 8-20 и сеть из 8-10 человек будет при открытии каждым всего 1-2 страниц производить "чрезмерно большую сетевую активность".
Неправильно ты считаешь!
Максимум 237 потоков (по твоим подсчетам) делим на 8 соединений с сервером на 1 пользователя Оперы = почти 30 пользователей! И грузить они могут хоть по 100 страниц - все равно Опера откроет максимум только 8 соединений с HC на 1 пользователя! И не факт, что для каждого соединений будет создан новый поток, т.к. может быть использован один из освободившихся! И не факт, что все эти пользователи одновременно начнут активно ходить по интернету, поэтому реальное количество пользователей сети, которых сможет без проблем обслужить HC, будет намного больше 30...
Да, максимальный размер стэка на 1 поток сейчас около 8 Мб. Раньше было 4 Мб, но стали возникать проблемы с работой регулярных выражений, что выливалось в потерю запросов при переполнении стэка. Эта проблема уже ранее обсуждалась среди бета-тестеров и автор HC принял решение увеличить максимальный размер стэка до 8 Мб на 1 поток. Были рассмотрены и альтернативные варианты:
Цитата: mai62 от 22 сентября 2007, 17:00:25
Я экспериментировал с библиотекой регулярных выражений в чисто сишном варианте. Там есть возможность использования при рекурсиях памяти из 'кучи' вместо стэка. При этом проблем со стэком уже нет, но работает такой вариант раз в 10 медленнее, а это совсем неприемлемо.
но они оказались не эффективны, поэтому решение проблемы отложено до второй версии HC:
Цитата: mai62 от 02 января 2008, 21:57:07
Во второй версии мне хочется сделать по другому: отдельный поток для каждого запроса слишком расточительно получается. Ну а в первой выбора нет, Indy только так может работать.
«
Последнее редактирование: 24 февраля 2008, 16:50:19 от DenZzz
»
Сообщить модератору
Записан
sergo
Постоялец
Репутация: +5/-1
Offline
Сообщений: 112
Re: HC сильно грузит процессор, ест память и при
«
Ответ #57 :
24 февраля 2008, 17:18:45 »
получается резервирование виртуальной памяти продиктовано реальными потребностями. значит здесь ничего не уменьшить а просто приходится это уитывать.
посчитал неправильно. 8 соединений на одного пользователя это только соединения браузер--handycash. считаем все куда входят и handycash-сервер. их тоже будет уже как минимум 8 а практически больше так как запросы к разным серверам браузер пошлет по одному соединению а handycash придется их делить. итого 16-24 соединения на одного пользователя. умножим на 10 пользователей и вот результат. это если каждый из 10 одновременно открыли только по одной единственной странице одновременно. если одновременно открываемых страниц больше ("И грузить они могут хоть по 100 страниц") то больше будет соединений handycash-сервер число которых никем неограниченное. и один единственный чересчур агресивный пользователь сможет "забить" половину пропускной способности.
весь этот подсчет такой удручающий если отключено взятие из кэша и черный список. включение же этих вещей серьезно уменьшает количество соединений handycash-сервер и расширяет возможное количество одновременых пользователей
Сообщить модератору
Записан
cepera_ang
Beta tester
Репутация: +9/-4
Offline
Сообщений: 355
Re: HC сильно грузит процессор, ест память и притормаживает систему!
«
Ответ #58 :
24 февраля 2008, 17:40:11 »
К чему пустые теоретизирования? На практике в сети из 50 компьютеров никогда не видел столько соединений. И опять же даже если 200 соединений действительно установятся нехватит никакого канала, чтобы их одновременно обслужить и скорости диска, чтобы записать/прочитать из кеша.
Сообщить модератору
Записан
sergo
Постоялец
Репутация: +5/-1
Offline
Сообщений: 112
Re: HC сильно грузит процессор, ест память и при
«
Ответ #59 :
24 февраля 2008, 18:14:36 »
Цитата: cepera_ang от 24 февраля 2008, 17:40:11
К чему пустые теоретизирования?
если ты читаешь с самогь начала то должен видеть что проблема возникла не в теории а на практике и вовсе не в сети 50 пользователей а у одного единственного. разобрались вроде нормально с пользой.
у меня при 220 соединениях ни малейшего напряга ни adsl ни винчестер не высказали. проверь насчет пустоты свои слова "даже если 200 соединений действительно установятся нехватит никакого канала, чтобы их одновременно обслужить и скорости диска, чтобы записать/прочитать из кеша". по крайней мере у меня в практической ситуации они не подтверждаются
Сообщить модератору
Записан
Страниц:
1
2
[
3
]
4
5
...
7
Вверх
Отправить эту тему
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Главная категория
-----------------------------
=> Общие вопросы
=> Новые предложения
=> Дополнения, плагины
=> Сжатие трафика
=> English forum
=> Indonesian forum
-----------------------------
Гостевая
-----------------------------
=> Гостевая
-----------------------------
Дела домашние
-----------------------------
=> Сайт и форум HandyCache
=> Курилка
© 2006-2014 HandyCache Team. Все права защищены.
Загружается...