Yahoo でカスタマイズされた apache のまとめ

Yahoo で使用されている独自カスタマイズされた apache についてのプレゼンテーション資料が公開されていたので、自分なりにまとめてみました。

Hacking Apache HTTP Server at Yahoo!

  • HTTPヘッダーの "Server:" は出力しない
  • apache 1.3 がベース
  • 安定動作が重要
  • スレッドは使用しない(動作が複雑)
  • ログフォーマットは独自フォーマット
  • ログローテンションは独自の仕組みを持つ。シグナルもパイプも使用しない
  • レスポンスコード 30x は最小限のものだけ出力
  • コンテンツは gzip 圧縮して出力(HTTP/1.1)。CPU 使用率が 90% を超えると自動的に gzip 圧縮をストップ
  • 起動と同時に最大数のプロセスを生成する
  • プロセスがアイドル状態になっても終了しない
  • HTTPリクエストをカーネル側でバッファして、apacheが効率的に動作できるようにする
  • 全てのレスポンスを送信後、すぐにソケットを閉じる。クライアントが全てのデータを受け取ったかどうかは気にしない
  • HTMLに自動的にホスト名の情報をコメントとして挿入。ユーザからHTMLを送ってもらって原因追求ができるように
  • SSLの処理には専用のアクセラレータ(ハードウェア)を使用
  • 全ての https(443) へのアクセスは http(80) へ渡される
  • コアダンプはさせないようにする
  • プロセスの状態を見る独自ツール - ysar

Yahoo のように巨大なシステムになってくると、
こういった細かいところまでカスタマイズが必要なんでしょうね。
細かいカスタマイズによる高速化は全体から見れば大きな効果になるわけで。

トラックバック(1)

このブログ記事を参照しているブログ一覧: Yahoo でカスタマイズされた apache のまとめ

このブログ記事に対するトラックバックURL: http://blog.bz2.jp/bz2mt/mt-tb.cgi/109

Linux Tips (PukiWiki/TrackBack 0.3) - Server/Apache (2006年5月 5日 23:26)

#include(): Included already: Apache 続きを読む

コメント(1)

間違ってtrackback送ってしまいました。m(__)m

ウェブページ

Powered by Movable Type 4.21-ja

このブログ記事について

このページは、masatoが2006年1月30日 23:32に書いたブログ記事です。

ひとつ前のブログ記事は「cvs のリポジトリを subversion に移行する」です。

次のブログ記事は「Yahoo でカスタマイズされた PHP のまとめ」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。