ホームページ > バックエンド開発 > PHPチュートリアル > PHP はワニス キャッシュ サーバーのステータスの監視を実装します。PHP はワニッシュ キャッシュを監視します_PHP チュートリアル

PHP はワニス キャッシュ サーバーのステータスの監視を実装します。PHP はワニッシュ キャッシュを監視します_PHP チュートリアル

WBOY
リリース: 2016-07-13 10:10:32
オリジナル
908 人が閲覧しました

phpはワニスキャッシュサーバーのステータスの監視を実装し、phpはワニスキャッシュを監視します

varnish と Web サイトが同じサーバーに配置されている場合、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() == "名前" )
{
$tmpName=$subChild;
}
else if ($subChild->getName() == "値" )
{
if ($tmpName!="")
{
$arys["$tmpName"]=$subChild;
$tmpName="";
}
}
その他
{
続行;
}
}
}
関数 byteReduce($bytes)
{
If ($bytes>1099511627776)
{
リターンラウンド($bytes/1099511627776)."TB";
}
else if ($bytes > 1073741824)
{
リターンラウンド($bytes/1073741824)."GB";
}
else if ($bytes>1048576)
{
returnround($bytes/1048576)."MB";
}
else if ($bytes>1024)
{
ラウンドを返す($bytes/1024)."KB";
}
その他
{
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 "キャッシュ ヒット率: ".round(($arys["cache_hit"]/$arys["client_req"])*100)." %
";
echo "LRU 核放棄されたオブジェクト: ".$arys[n_lru_nuked]."
";
echo " ".byteReduce($arys["s_bodybytes"]+$arys["s_hdrbytes"])." Acc Content (".byteReduce($arys["s_hdrbytes"])." header ".byteReduce($arys[" s_bodybytes"]).";
?>

効果は次のとおりです:

追記: リアルタイムの状況を確認するには、監視ページを定期的に更新するための HTML を追加します。 これでいつでもニスの状態を簡単に確認できるようになります

http://www.bkjia.com/PHPjc/935486.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/935486.html技術記事 PHP は Varnish キャッシュ サーバーのステータスの監視を実装しています。Varnish と Web サイトが同じサーバー上に展開されている場合、いつでもサーバーにログインしてデータを表示することはできません。
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート