検索
ホームページphp教程php手册php实现监控varnish缓存服务器的状态

php实现监控varnish缓存服务器的状态

Jun 13, 2016 am 09:08 AM
phpvarnish成し遂げるサーバモニターキャッシュ

php实现监控varnish缓存服务器的状态

 这篇文章主要介绍了php实现监控varnish缓存服务器的状态,Varnish是一款高性能的开源HTTP加速器,可以替代Squid、Nginx等服务器,需要的朋友可以参考下

 

 

当varnish和网站部署在同一台服务器上的时候,我们不可能随时登录上服务器去查看varnish的命中率,没想到有大神早就写了出来,今天就分享给大家,使用网页查看varnish命中率。

 

系统:centos 5.x
软件:varnish-3.0.x

 

ps:3.0以下的版本可以通过Socket连接到Varnish管理端口,通过stat命令查看,3.0以上没有stat命令,只能通过下面的方法解决。

 

 

代码如下:


$outfile=shell_exec("/usr/bin/varnishstat -x");
$xml=simplexml_load_string($outfile);
echo $xml->getName() . "
";
foreach($xml->children() as $child)
{
//$tmpName="";
foreach($child->children() as $subChild)
{
if ($subChild->getName() =="name" )
{
$tmpName=$subChild;
}
else if ($subChild->getName() =="value" )
{
if ($tmpName!="")
{
$arys["$tmpName"]=$subChild;
$tmpName="";
}
}
else
{
continue;
}
}
}
function byteReduce($bytes)
{
if ($bytes>1099511627776)
{
return round($bytes/1099511627776)."TB";
}
else if ($bytes > 1073741824)
{
return round($bytes/1073741824)."GB";
}
else if ($bytes>1048576)
{
return round($bytes/1048576)."MB";
}
else if ($bytes>1024)
{
return round($bytes/1024)."KB";
}
else
{
return $bytes."B";
}
}
echo "client_conn: ".$arys["client_conn"] . "
";
echo "client_req: ".$arys["client_req"] . "
";
echo "cache_hit: ".$arys["cache_hit"] . "
";
echo "cache_miss: ".$arys["cache_miss"] . "
";
echo "Cache hit rate: ".round(($arys["cache_hit"]/$arys["client_req"])*100)." %
";
echo "LRU nuked objects: ".$arys[n_lru_nuked]."
";
echo " ".byteReduce($arys["s_bodybytes"]+$arys["s_hdrbytes"])." Acc Content (".byteReduce($arys["s_hdrbytes"])." header ".byteReduce($arys["s_bodybytes"])." Body)";
?>

 

 

效果如下:

 

 

ps:为了查看实时情况,可以在这监控页加个html定时刷新.
好了,这样就方便我们随时查看varnish的状态了.

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン