У меня очень активный веб-сайт, использующий базу данных NoSql (RavenDb). У меня нет точных цифр, так как я не совсем уверен, как извлечь эту информацию (любая помощь была бы замечательной!)
Но если посмотреть в мониторе производительности на счетчик «% чтения с диска» на диске, с которого работает моя база данных, он регулярно превышает 1000 ... что не имеет смысла, если это процент ???
Производительность моих сайтов действительно снижается, когда эти цифры становятся такими высокими, не настолько, чтобы их нельзя было использовать, но они должны быть лучше.
Смотрю ли я на правильные счетчики производительности, что еще я могу посмотреть, чтобы узнать, находится ли мой диск под большой нагрузкой ... и даже лучше, если я смогу выяснить, почему.
Мои диски - это диски емкостью 2 ТБ, 7200 об / мин (не идеальный вариант, я знаю, но это все, что у меня есть в настоящее время) 12 ГБ памяти (использует около 80%) Dual Xeon processor
Я понимаю, что этот вопрос немного расплывчатый, мне нужна помощь, чтобы донести до вас нужную информацию, чтобы помочь вам лучше ответить на него, просто дайте мне знать, что поможет.
Павел
Ваш инстинкт верен; Я бы не пошел дальше дисков. Диски SATA бытового уровня ужасно медленные и вообще не подходят для размещения бизнес-приложений. Слабым звеном будет фактическая скорость шпинделя и контроллер хранилища (RAID). При прочих равных, последовательный SCSI (SAS) даст гораздо больше операций ввода-вывода в секунду, чем SATA. Избегайте RAID5 для (большинства) баз данных, используйте RAID10 везде, где это возможно.
К сожалению, как и в случае со многими другими проблемами ИТ, единственное реальное решение - «быть менее бедным».
ОБНОВИТЬ:
Чтобы ответить на ваш вопрос относительно «% времени чтения с диска», обратитесь к следующей базе знаний Microsoft. статья. Кажется, что некоторые контроллеры хранилищ странным образом сообщают статистику. С учетом сказанного, определенно кажется, что ваши диски доведены до абсолютного предела.
Вы не можете использовать% времени чтения с диска, чтобы определить, занят ли диск. Это связано с тем, что «время занятости [определяется] на основе продолжительности запроса ввода-вывода, которая включает время, потраченное на действия, отличные от чтения или записи из диск. Затем он суммирует все время занятости для всех запросов и делит его на прошедшее время интервала выборки. Если одновременно обрабатываются несколько запросов, общее время запроса больше, чем время интервала выборки; как в результате заявленное использование диска может превышать фактическое использование ".