ホームページ >バックエンド開発 >PHPチュートリアル >phpfpm は独自のステータス最適化ステップを使用します

phpfpm は独自のステータス最適化ステップを使用します

WBOY
WBOYオリジナル
2016-07-29 09:14:481669ブラウズ

php-fpm には nginx のような組み込みのステータス ページがあり、php-fpm のステータスを理解し、php-fpm を監視するのに非常に役立ちます。後続の zabbix 監視では、まず php-fpm ステータス ページで何が起こっているかを理解する必要があります。

1. php-fpm status機能を有効にする

<code><span># cat  /usr/local/php-5.5.10/etc/php-fpm.conf | grep status_path</span>
pm.status_path = /status</code>

2. nginx/php-fpmを再起動する

<code>server {
    listen  *:<span>80</span> default_server;
    server_name _;
    location ~ ^/(status|ping)$
    {
        <span><strong>include</strong></span> fastcgi_params;
        fastcgi_pass <span>127.0</span><span>.0</span><span>.1</span>:<span>9000</span>;
        fastcgi_param SCRIPT_FILENAME <span>$fastcgi_script_name</span>;
    }
}</code>

5. php-fpm statusの詳細な説明

pool – fpm プール名、主に www

プロセスマネージャー – プロセス管理方法、値: 静的、動的、またはオンデマンド動的

開始時刻 – 開始日。php-fpm がリロードされると、時刻が更新されます

開始日 – 実行時間
    accept conn – 現在のプールによって受け入れられたリクエストの数


  • max listen queue – キュー内で待機しているリクエストの最大数
    listen queue len – 待機中のソケット
    queue
    length listen queue请求等待<strong>队列</strong>,如果这个值不为0,那么要增加FPM的进程数量 アイドルプロセス – アイドルプロセスの数
    アクティブなプロセス – アクティブなプロセスの数 総プロセス – 総プロセス数 max active process – アクティブなプロセスの最大数 (FPM の起動から計算)
    遅いリクエスト – php-fpm スローログが有効になっている、遅いリクエストの数


    6. php-fpm のその他のパラメータ

    php-fpm ステータス ページのよりパーソナライズされた側面の 1 つは、パラメータとパラメーターで実行できますmax children reached - 大道进程最大数量限制的次数,如果这个数量不为0,那说明你的最大进程数量太小了,请改大一点。 組み合わせ。
6.1 json

<code>service nginx restart
service php<span>-fpm</span> restart</code>
jsonxmlhtml并且前面三个参数可以分别和full6.2 xml
    <code><span># curl http://www.ttlsa.com/status</span>
    pool:                 www
    process manager:      dynamic
    start time:           <span>14</span>/May/<span>2014</span>:<span>22</span>:<span>40</span>:<span>15</span> +<span>0800</span>
    start since:          <span>58508</span>
    accepted conn:        <span>33</span>
    listen queue:         <span>0</span>
    max listen queue:     <span>8</span>
    listen queue len:     <span>0</span>
    idle processes:       <span>2</span>
    active processes:     <span>1</span>
    total processes:      <span>3</span>
    max active processes: <span>5</span>
    max children reached: <span>0</span>
    slow requests:        <span>2091</span></code>
  • 6.3 html
      <code># curl http://<span>127.0</span><span>.0</span><span>.1</span>/status?json
      {"<span>pool</span>":<span><span>"www"</span></span>,"<span>process manager</span>":<span><span>"dynamic"</span></span>,"<span>start time</span>":<span><span>1400078415</span></span>,"<span>start since</span>":<span><span>59624</span></span>,"<span>accepted conn</span>":<span><span>27</span></span>,"<span>listen queue</span>":<span><span>0</span></span>,"<span>max listen queue</span>":<span><span>8</span></span>,"<span>listen queue len</span>":<span><span>0</span></span>,"<span>idle processes</span>":<span><span>2</span></span>,"<span>active processes</span>":<span><span>1</span></span>,"<span>total processes</span>":<span><span>3</span></span>,"<span>max active processes</span>":<span><span>5</span></span>,"<span>max children reached</span>":<span><span>0</span></span>,"<span>slow requests</span>":<span><span>2145</span></span>}</code>
    • 6.4 full
        <code># curl http://127.0.0.1/status?xml
        <span><?xml version="1.0" ?></span><span><<span>status</span>></span><span><<span>pool</span>></span>www<span></<span>pool</span>></span><span><<span>process-manager</span>></span>dynamic<span></<span>process-manager</span>></span><span><<span>start-time</span>></span>1400078415<span></<span>start-time</span>></span><span><<span>start-since</span>></span>59640<span></<span>start-since</span>></span><span><<span>accepted-conn</span>></span>36<span></<span>accepted-conn</span>></span><span><<span>listen-queue</span>></span>0<span></<span>listen-queue</span>></span><span><<span>max-listen-queue</span>></span>8<span></<span>max-listen-queue</span>></span><span><<span>listen-queue-len</span>></span>0<span></<span>listen-queue-len</span>></span><span><<span>idle-processes</span>></span>2<span></<span>idle-processes</span>></span><span><<span>active-processes</span>></span>1<span></<span>active-processes</span>></span><span><<span>total-processes</span>></span>3<span></<span>total-processes</span>></span><span><<span>max-active-processes</span>></span>5<span></<span>max-active-processes</span>></span><span><<span>max-children-reached</span>></span>0<span></<span>max-children-reached</span>></span><span><<span>slow-requests</span>></span>2145<span></<span>slow-requests</span>></span></code>
      • 6.5 完全な詳細説明
          pi d – プロセス PID。このプロセスだけを強制終了できます。この PID を使用して、長時間実行されているプロセスを強制終了できます
        • state – 現在のプロセスの状態 (アイドル、実行中など)
        • 開始時刻 – プロセスが開始された日付
        開始日 – 現在のプロセスが実行されている期間
          リクエスト – 現在のプロセスによって処理されたリクエストの数
        • リクエスト期間 – リクエスト期間 (微妙)
        • リクエストメソッド – リクエストメソッド (GET、POST、…)
        • リクエスト URI – リクエスト URI
          コンテンツの長さ – リクエストのコンテンツの長さ (POST のみ)
          ユーザー – ユーザー (PHP_AUTH_USER) (設定されていない場合は「-」)
          script – PHP スクリプト (設定されていない場合は「-」)
          last request cpu – 前回のリクエストの CPU 使用率。
          last request メモリ - 最後のリクエストで使用されたメモリ


          7. Complete

          php-fpm ステータス ページは、zabbix または nagios モニタリングを使用する場合、xml またはデフォルトのメソッドの使用を検討できます。 Web を使用する場合は、表がより明確になるため、html を使用することをお勧めします。

        上記では、phpfpm が独自のステータス最適化を使用するための手順を、関連する内容も含めて紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。

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