Я планирую разработать скрипт, чтобы проверить процентное соотношение времени работы моего сервера. В процентах от времени я имею в виду что-то вроде 99,7% или что-то в этом роде. Поскольку каждый веб-хост говорит, что они обеспечивают 99,9% времени безотказной работы, я хочу написать сценарий, который фактически проверяет, что на самом деле процент наработки.
Я знаю, как получить время безотказной работы в секундах или час-мин-сек. Для этой цели я использую этот сценарий ниже.
$uptime = shell_exec("cut -d. -f1 /proc/uptime");
Но то, что я не получаю, это то, как я могу рассчитать процентное соотношение времени безотказной работы, например, 99% времени безотказной работы или что-то в этом роде. Я ищу некоторые идеи и помогаю в этом.
Я буду очень рад, если вы, ребята, поделитесь каким-то мнением и справкой о том, чтобы вместо этого дать отрицательный голос на этот вопрос.
PS: Я уже проверял этот вопрос: измерение работоспособности сервера, но это не отвечает на мою проблему.
Общим способом является мониторинг сервера извне, так как серверу будет сложно определить свою видимость. Это похоже на попытку наблюдать за собой в третьем лице без зеркала.
Если вас не беспокоит время простоя интернет-подключения к серверу, вы можете локально контролировать свои открытые порты и получать процент от времени открытия и закрытия порта. Это примерно так же близко, как и вы, для оценки собственной эффективности.
Memcache :: getStats - Получить статистику сервера
Вот страница, которая включает готовый скрипт для возврата всех доступных статистических данных, а также фрагменты кода для захвата определенных значений. Все, что вам нужно, здесь:
http://php.net/manual/en/memcache.getstats.php
Особое значение, которое вы ищете, возвращается в:
uptime (Number of seconds this server has been running)
Как отметил ceejayoz, Memcache должен быть установлен. Это не родной PHP. Вы можете установить php memcache Google с именем сервера O/S.
uptime
сервера - он просто сообщает вам, сколько времени прошло с момента последней перезагрузки службы.