タグ

2019年9月2日のブックマーク (4件)

  • Apacheのリクエスト処理時間(%T or %D)は正確には何の時間か — ありえるえりあ

    Apacheのログに%T or %Dでリクエスト処理時間を載せることができます。%Tと%Dは内部的には同じ計算値で、単位が異なるだけです(%Tは秒、%Dはマイクロ秒)。 このリクエスト処理時間は、いつからいつまでの処理時間でしょうか。つまり計測時間の開始と終了はどのタイミングでしょうか。 終了はレスポンスデータをsend(2)し切ったタイミングです。 開始として思いつくのは次の3つのタイミングです。 listenキューに入ったタイミング(3wayハンドシェイクの最初のACKを受けたタイミング) accept(2)が返ったタイミング(3wayハンドシェイクの最後のACKを受けたタイミング) リクエストデータをrecv(2)する前 実はどれも間違いです。正解は、リクエストデータの1行目のリクエスト行を読み終わったタイミングです(ソースコードで言うと server/protocol.cのread

  • MySQLパフォーマンスチューニング -my.cnfの見直し- - Qiita

    ※RDSは使っていません。 負荷を見てみる DBサーバーの負荷状況を見てみます。 当時の監視ツールの画像がないのですが、以下の状況でした。 LA(Load Average)が突き抜けている リクエスト数は「常識的に考えて」それほどでもない メモリの使用量にあまり変化がない swapはしていない ストレージ容量を結構っている WEBサーバーから見れば、処理待ちのままプロセスが処理されていない典型的なパターンだったと思います。 DBサーバーとしては、LAに対し、メモリの使用量があっていないように思われました。 仮説 上記の状態から、仮説を立てます。 スロークエリ が頻発しているのではないか メモリ が正しく割り当てられていないのではないか 各種ログ の設定が適切ではないのではないか 仮説を検証することで、対策をしていきます。 設定を見直す 上記の仮説の設定は、MySQLの設定ファイルである「

    MySQLパフォーマンスチューニング -my.cnfの見直し- - Qiita
  • MySQL で my.cnf のシンタックスチェックを行う方法

    MySQL でサーバは起動せずに my.cnf のシンタックスチェックだけ行いたい場合があります。 そういうときには mysqld コマンドにオプションをつけて実行すれば OK です。

    MySQL で my.cnf のシンタックスチェックを行う方法
  • Apache TimeoutとKeepAliveTimeout - Qiita

    まとめ KeepAliveTimeoutはTCPセッション上で、無通信が続いた場合にいつ切断するかを制御する。ロードバランサーとバックエンド間でTCPセッションを使い回し、1の上で複数のHTTPセッションをやり取りする場合はこちらを見る ELB Idle Connection Timeoutよりも、KeepAliveTimeoutを長く取っておく必要がある "make sure that the value set on your instance for the keep-alive time is greater than the idle timeout setting on your load balancer." Timeoutは一度張ったHTTPセッション上で、無通信が続いた場合にいつ切断するかを制御する。ファイルダウンロード中の無通信状態などはこちらを見る 参考文献 htt

    Apache TimeoutとKeepAliveTimeout - Qiita