Назад | Перейти на главную страницу

Достаточно ли чтения ответа HTTP GET, чтобы знать, работает ли сервер?

Я хочу убедиться, что сайт работает. Достаточно ли чтения ответа HTTP GET?

Что тестируют такие сервисы, как PingDom?

Ну, если вы на самом деле получить ответ, вы можете предположить, что настоящий HTTP-сервер жив. Если вы хотите проверить, действительно ли сайт функционирует в дополнение к тому, что он находится в сети, вам нужно будет прочитать этот ответ, чтобы убедиться, что это не страница с ошибкой или что-то в этом роде ...

Обычно мониторинг HTTP бывает трех видов:

  1. Проверка того, отвечает ли сервер на порт, т.е. TCP-соединение подтверждено (check_tcp в nagios)
  2. Проверка только кода ответа HTTP, т.е. выполнение OPTIONS или HEAD и обеспечение того, чтобы возвращаемый ответ HTTP был либо 2xx, либо 3xx (в отличие от 4xx или 5xx).
  3. Проверка ответа типа (2), а также проверка ожидаемой строки текста в выводе.

Вариант 3 был бы наиболее надежным, но он требует полного GET содержимого вашей страницы каждый раз, когда сервер мониторинга обращается к вашему серверу. Вариант 2 может быть реализован только с помощью HTTP OPTIONS или HEAD, вариант 1 может быть выполнен с помощью только connect ().

PingDom, вероятно, подойдет вариант (3), как я полагаю.

Если вы также хотите убедиться, что сайт действительно работает (и не просто "вверх"), вы должны запустить мониторинг транзакций или, что еще лучше, мониторинг реального браузера в дополнение к стандартным HTTP-тестам get и ping.

Конечно, это наиболее важно для сложных веб-сайтов, в которые интегрировано множество сторонних сервисов, Ajax, Javascript и т. Д. - Это не требуется для простого статического веб-сайта.

Смотрите также http://en.wikipedia.org/wiki/Synthetic_monitoring