Как я могу измерить загрузку сервера?

#cpu-usage

#загрузка процессора

Вопрос:

Как я могу измерить загрузку сервера в терминах запросов в единицу времени (скажем, в один час), предполагая, что известна максимальная пропускная способность сервера (например, 1000 запросов в час)? Я знаю, что уравнение будет:

 utilization = Number of executed requests by server / server capacity 
  

Но как я могу измерить запросы, отправляемые от клиента на сервер?
Пожалуйста, мне нужно корректное уравнение для определения запроса.

Комментарии:

1. Что это за запросы? Какое программное обеспечение обрабатывает запросы?

Ответ №1:

На это нельзя ответить, поскольку «запрос» в модели клиент / сервер не может быть идентифицирован без знания протокола. Для иллюстрации, несколько HTTP-запросов могут быть отправлены в одном соединении. Протоколы на основе UDP вообще не используют соединения.

Самое общее описание, которое я могу придумать для определения запроса в неопознанном протоколе клиент / сервер, — это количество сообщений, инициированных клиентом, которые требуют ответа от сервера. Это наблюдаемая переменная, а не производная.

В программе вы получили бы эту переменную через обратный вызов или RPC на соответствующий сервер или программу, которая могла бы предоставить эту переменную путем проверки файлов журнала.

Комментарии:

1. файловые запросы к серверу любого типа (например: веб-сервер)

2. Мне нужна общая формула для определения запроса

3. Мне просто нужно измерить загрузку сервера

Ответ №2:

Для использования вы можете получить все, что вам нужно, из утилиты «sar».

Однако «запрос» будет очень специфичным для используемого вами программного обеспечения. Например, если вы используете веб-сервер Apache, по умолчанию он будет регистрировать каждый запрос, и вы можете просмотреть эти журналы, чтобы извлечь данные вашего запроса.

Однако имейте в виду, что это «технические» запросы и они могут не соответствовать представлению ваших пользователей о запросе. Подумайте об Amazon, я могу рассматривать свой заказ книги как один «запрос», сервер Amazons зарегистрирует это как 50 или около того http-запросов.

Комментарии:

1. У меня есть другой вопрос, как я могу оценить количество заданий, выполняемых процессором в течение одного часа?