Определение этих метрик записано в /proc/vmstat на RHEL 5.3 (подкачка / замена?)
Этот вопрос относится к определению конкретных метрик, записанных в /proc/vmstat на RHEL 5.3.
Я использую nmon для мониторинга нагрузочного теста, который состоит из имитации 2500 пользователей, выполняющих дневную нагрузку за один час. В последнее время я видел плохую работу и нахожусь в процессе диагностики и исключаю различные соображения.
Мы работаем с Red Hat Enterprise Linux Server версии 5.3 (Tikanga) на VMware ESX. Физический сервер, на котором я сконцентрировался, и Oracle Application Server (в него входят HTTP-сервер Apache и J2EE-контейнер OC4J).
Диаграммы nmon, которые я просматриваю, показывают последовательное распределение для метрики ps wpin. Суммируется как; мин = 4312; макс = 245352; avg = 86734. Nmon показывает эти значения, измеренные в "килобайтах в секунду"
Следующие показатели равны нулю на протяжении всего теста;
- ps wpout
- pgpgin
- pgpgout
Я не понимаю, что означает эта комбинация метрик, учитывая мое понимание подкачки и подкачки.
Мои вопросы):
- Может кто-нибудь подтвердить, что представляют эти показатели?
- Любая идея, какое поведение системы может вызвать этот тип поведения виртуальной машины?
В данный момент я пытаюсь исключить проблемы с виртуальной памятью как причину низкой производительности.
РЕДАКТИРОВАТЬ: я нашел доказательства большого количества вызовов fork() на протяжении всего теста. Я подозреваю, что демоны Apache. Но может ли процесс создания быть причиной этих показателей?
РЕДАКТИРОВАТЬ: я добавил типичный пример вывода виртуальной машины из Nmon. Извиняюсь за плохое форматирование.
Заранее спасибо за любые ответы.
T0001 -1 22 -1 -1 -1 150 -1 -1 -1 5196046163 -1 0 30 100199751 3060 -1 0 -1 885 -1 -1 -1 46163 -1 -1 18 -1 828189171 -1 -1 3838 -1 -1 -1 -1 -1 165231
03:07:23 Paging and Virtual Memory nr_dirty nr_writeback nr_unstable nr_page_table_pages nr_mapped nr_slab pgpgin pgpgout pswpin pswpout pgfree pgactivate pgdeactivate pgfault pgmajfault pginodesteal slabs_scanned kswapd_steal kswapd_inodesteal pageoutrun allocstall pgrotated pgalloc_high pgalloc_normal pgalloc_dma pgrefill_high pgrefill_normal pgrefill_dma pgsteal_high pgsteal_normal pgsteal_dma pgscan_kswapd_high pgscan_kswapd_normal pgscan_kswapd_dma pgscan_direct_high pgscan_direct_normal pgscan_direct_dma
03:07:33 -1 99 -1 -1 -1 241 0 0 0 77526 0 0 0 824 0 0 0 0 0 0 0 0 77526 0 0 0 0 0 0 0 78216 0 0 0 0 0 0
03:07:43 -1 10 -1 -1 -1 262 0 0 0 21653 0 0 8 500 2 0 0 0 0 0 0 0 21653 0 0 0 0 0 0 0 17675 0 0 0 0 0 0
03:07:53 -1 69 -1 -1 -1 257 0 0 0 115744 0 0 0 724 0 0 0 0 0 0 0 0 115744 0 0 0 0 0 0 0 -79544 0 0 0 0 0 0
03:08:03 -1 69 -1 -1 -1 196 0 0 0 81202 0 0 0 628 0 0 0 0 0 0 0 0 81202 0 0 0 0 0 0 0 -18335 0 0 0 0 0 0
03:08:13 -1 81 -1 -1 -1 205 0 0 0 29051 0 0 0 352 0 0 0 0 0 0 0 0 29051 0 0 0 0 0 0 0 24449 0 0 0 0 0 0
03:08:24 -1 91 -1 -1 -1 131 0 0 0 122795 0 0 0 1172 0 0 0 0 0 0 0 0 122795 0 0 0 0 0 0 0 9640 0 0 0 0 0 0
03:08:34 -1 6 -1 -1 -1 182 0 0 0 74914 0 0 4 372 1 0 0 0 0 0 0 0 74914 0 0 0 0 0 0 0 -24477 0 0 0 0 0 0
03:08:44 -1 38 -1 -1 -1 200 0 0 0 42957 0 0 4 464 1 0 0 0 0 0 0 0 42957 0 0 0 0 0 0 0 42778 0 0 0 0 0 0
03:08:54 -1 6 -1 -1 -1 141 0 0 0 89751 0 0 36 1000 9 0 0 0 0 0 0 0 89751 0 0 0 0 0 0 0 -9665 0 0 0 0 0 0
03:09:04 -1 6 -1 -1 -1 171 0 0 0 74740 0 0 4 516 1 0 0 0 0 0 0 0 74740 0 0 0 0 0 0 0 -24583 0 0 0 0 0 0
03:09:14 -1 10 -1 -1 -1 179 0 0 0 56063 0 0 0 500 0 0 0 0 0 0 0 0 56063 0 0 0 0 0 0 0 56384 0 0 0 0 0 0
03:09:24 -1 6 -1 -1 -1 74 0 0 0 75623 0 0 0 696 0 0 0 0 0 0 0 0 75623 0 0 0 0 0 0 0 -23994 0 0 0 0 0 0
03:09:34 -1 6 -1 -1 -1 137 0 0 0 75466 0 0 8 972 2 0 0 0 0 0 0 0 75466 0 0 0 0 0 0 0 -23837 0 0 0 0 0 0
03:09:44 -1 3 -1 -1 -1 153 0 0 0 72535 0 0 4 460 1 0 0 0 0 0 0 0 -927465 0 0 0 0 0 0 0 -26880 0 0 0 0 0 0
03:09:54 -1 6 -1 -1 -1 170 0 0 0 56775 0 0 0 284 0 0 0 0 0 0 0 0 56775 0 0 0 0 0 0 0 56895 0 0 0 0 0 0
03:10:04 -1 6 -1 -1 -1 166 0 0 0 74756 0 0 0 1116 0 0 0 0 0 0 0 0 74756 0 0 0 0 0 0 0 -24568 0 0 0 0 0 0
03:10:14 -1 6 -1 -1 -1 148 0 0 0 78043 0 0 0 432 0 0 0 0 0 0 0 0 78043 0 0 0 0 0 0 0 -21241 0 0 0 0 0 0
03:10:24 -1 64 -1 -1 -1 189 0 0 0 64057 0 0 0 412 0 0 0 0 0 0 0 0 64057 0 0 0 0 0 0 0 60788 0 0 0 0 0 0
1 ответ
pgpgin - Number of kilobytes the system has paged in from disk per second.
pgpgout - Number of kilobytes the system has paged out to disk per second.
pswpin - Number of kilobytes the system has swapped in from disk per second.
pswpout - Number of kilobytes the system has swapped out to disk per second.
Я уверен на 87%, что каждая страница, увеличившая счетчик pswpin, также должна увеличивать pgpgin. Вы говорите, что это не так. Хммм.
Это может быть слишком простой вещью, чтобы проверить (извините!), Но... Вы уверены на 200%, что метрика, которую вы наблюдаете, это pswpin, а не pgpgin? Последнее будет переводить как: процесс читает некоторые файлы.
Другое объяснение состоит в том, что приложение было сильно заменено перед тестом, затем система получила много свободной памяти. И во время теста вы наблюдаете, как он "возвращается к жизни" (постоянно меняя себя - по мере выполнения кода), без чтения / записи каких-либо файлов. Но почему в таком сценарии pgpgin не увеличен вдоль pswpin, я не понимаю.
Может быть, ваши диаграммы подправлены, поэтому pswpin вычленен из pgpgin? Одним из подтверждений этого является то, что обе метрики обычно находятся на страницах (в /proc/vmstat), и вы конвертируете их в КБ / с.
РЕДАКТИРОВАТЬ: Это может быть связано с ESX. Мое странное предположение, что это является побочным эффектом либо баллонирования, либо прозрачного совместного использования страниц (TPS). Вы можете анализировать через ESXtop на ESX? Вот еще одно руководство esxtop.
РЕДАКТИРОВАТЬ: Ваша статистика NMON кажется сломанной. Прежде всего, есть больше имен столбцов, чем фактических показателей (т. Е. У вас нет данных для последнего столбца pgscan_direct_dma
). Есть много значений -1 или 0 для метрик, которые должны быть в загруженной системе, не только отсутствует pgpgin. Pgsteal и pgrotated есть, но иногда отрицательные, что невозможно.
Итак, посмотрите на /proc/vmstat, что там происходит? И используйте другие инструменты для подтверждения статистики nmon.