![]() |
Выявление узких мест в системе
В общем проблема такая
Значит есть сервак под Линухом На нем крутятся два основных демона на Яве писаных Ну и всяких стандартных прог типа ТомСат Apache MySql На серваке соит система по сбору статистики с Web интерфейсом. Статистика по Load (общая средняя загрузка системы)временами колеблится от 1.5 до 3(как мне обьяснил начальник ето не есть хорошо) Статистика по простою проца говорит что 70% он нифга не делает. Задача найти узкие места. Во первых у меня вопрос Может кто знает какая загрузка системы птимальна и как считается етот параметр load average Во вторых подскажите пожалуйста направления поиска решений проблемы (я с подобным сталкиваюсь в первые) Как я понял load average ето среднее число процессов, находящихся в состоянии выполнения (R) или в состоянии ожидания (D). R - процесс выполняется или готов к выполнению (состояние готовности) D - процесс в "беспробудном сне" - ожидает дискового ввода/вывода T - процесс остановлен (stopped) или трассируется отладчиком S - процесс в состоянии ожидания (sleeping) Z - процесс-зобми Тоесть проблема в том что несколько процессов ожидают освобождения ресурса "диск" или ещё какого ресурса(так я понял). Подскажите пожалуйста как как вести раследование. (как вычислить критические процессы и ресурсы) или чего ещё Ну в общем есле есть у кого какие соображения пожалуста пишите(Потаму что я в етом совсем глух). Заранее благодарен. |
такое чувство что это кто то из редакторов журналов компьютерной тематике решил упростить себе задачу запостив сюда письмо читателя, в надежде что на него ответят :-)
|
Цитата:
Просто в первые сталкнулся с подобным есле вам не трудно то дайте пожалуйста ссылки или скажите что почитать |
Цитата:
Для выявления узких мест испорльзуй утилиту top (процесс наиболее активно грузящий систему отобразится сверху, и будет иметь большие значения в колонках TIME и CPU), а также утилиты из семейства *stat. Цитата:
|
Спасибо вам за ответ TaNkist
Цитата:
Да я смотрел top и там есть жирный процесс по всем параметрам: java Но как выяснит освобождения каких ресурсов ждут процесы(есле конечно в етом проблема). Может чтото ещё нужно выяснить ??? |
Цитата:
Первое покажет загрузку по процу, второе по памяти. Определи что у тебя выжираеться - проц или память и каким процессом. Так же посмотри есть ли свободная оператива (не юзаеться ли своп виснта) free- m (выведет данные по всей памяти что есть) vmstat 5 выведет количестко ображений в винту каждые 5 секунд. там даже видно свопиться ли система или просто данные с винта тащит. mysqladmin processlist покажет сколько подключений и к каким базам в данных момент происходит к мускулю. Тут ищи операции "copy to tmp table" и "locked". Первая операция при большом количестве запросов на одну базу память выжирает, а вторая указывает либо на битость базы, либо на вложенные ображения к базе, что тоже может выжирать память. Короче, почитай маны с описание этих команд чтобы понять что на что указывает. Советую попробовать ещё одну утилитку "atop" - если ты на машине ядро с её поддержкой скомпилишь, то в ней же можно будет посмотреть загрузку винта. |
Спасибо вам буду пробывать
|
http://openlib.org.ua/ru/books/id/81/
То что нужно !!! |
| Время: 19:48 |