2014-12-11 2 views
0

Я планирую разработать скрипт, чтобы проверить процентное соотношение моего сервера. В процентах от времени я имею в виду что-то вроде 99,7% или что-то в этом роде. Поскольку каждый веб-хост говорит, что они обеспечивают 99,9% времени безотказной работы, я хочу написать сценарий, который фактически проверяет, что на самом деле процент наработки.Проверка процентной доли в процентах в PHP - Необходимая справка

Я знаю, как получить время безотказной работы в секундах или час-мин-сек. Для этой цели я использую этот сценарий ниже.

$uptime = shell_exec("cut -d. -f1 /proc/uptime"); 

Но, что я не получаю, я могу рассчитать процентное соотношение времени безотказной работы, например, 99% времени безотказной работы или что-то в этом роде. Я ищу некоторые идеи и помогаю в этом.

Я буду очень рад, если вы, ребята, поделитесь своим мнением и поможете нам, вместо этого дадите отрицательный голос на этот вопрос.

P.S .: Я уже проверял этот вопрос: Measuring server uptime, но это не отвечает на мою проблему.

+0

Mmmm. Вычислите секунды с момента запуска проверки. Затем выполните сравнение типа tot_seconds_calculated: 100 = uptime_seconds: x. Затем выполните математический расчет –

+2

Время безотказной работы команды возвращает количество времени с момента загрузки машины, а не количество времени, в течение которого сайт доступен. – robbmj

+0

Yah! Я знаю, какую команду мне следует запускать? То, что мне нужна твоя помощь, ребята. Может ли кто-нибудь написать простой фрагмент, чтобы показать, как вы хотите меня реализовать. – iSaumya

ответ

1

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

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

+0

Я понимаю. Так что это невозможно. – iSaumya

+0

Вы можете отключить его, если вы можете установить прокси-сервер и обратно на свой собственный сервер. Я не горячий в сети, поэтому я не знаю, как сетевая карта отвечает при получении внешнего запроса от себя. – Flosculus

+0

Я не знаю, как это сделать, что вы говорите. – iSaumya

-2

Memcache :: getStats - Получить статистику сервера

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

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.

+2

Где вы получаете эту memcache установлен? – ceejayoz

+2

Re: ваше редактирование, даже если Memcache установлен, сервер Memcache может быть совершенно другой машиной, что делает ее статистику бесполезной для этой цели. Также безумно советовать устанавливать Memcache только для получения статистики работоспособности сервера **, особенно **, поскольку он имеет те же недостатки, что и встроенная команда 'uptime' сервера - он просто сообщает вам, как долго после последней перезагрузки службы. – ceejayoz

+0

Работает при правильных обстоятельствах. Я вижу вашу мысль. Мы используем его здесь как часть нашего ежедневного I.T. статистика, и нет никаких проблем. Но, да, пробег других людей может отличаться. –