Proxyとか

ネット界隈と時事ニュースなどの日常の何気ない話題が中心な信憑性もなければ公平性もない偏った素人のメモ。

 http://fula.jp/ へのリンクはフリーです [メール] [PGP] はこちらよりどうぞ。但し、営利目的の方はご遠慮下さい。    携帯    English    韓国語    中文

<< 花見で愛知万博広報飛行船 ツェッペリンNT号 | TOP | 立命館大学サイト 中国からクラッキング? >>

[Server]  Apache高速化 EnableMMAP Off EnableSendfile off で転送速度アップ

2005/04/11(Mon) 21:41:39

Apache2.0.52 httpd.conf

before

# EnableMMAP: Control whether memory-mapping is used to deliver
# files (assuming that the underlying OS supports it).
# The default is on; turn this off if you serve from NFS-mounted
# filesystems. On some systems, turning it off (regardless of
# filesystem) can improve performance; for details, please see
# http://httpd.apache.org/docs-2.0/mod/core.html#enablemmap
#
#EnableMMAP Off
# EnableSendfile: Control whether the sendfile kernel support is
# used to deliver files (assuming that the OS supports it).
# The default is on; turn this off if you serve from NFS-mounted
# filesystems. Please see
# http://httpd.apache.org/docs-2.0/mod/core.html#enablesendfile
#
#EnableSendfile off

after

# EnableMMAP: Control whether memory-mapping is used to deliver
# files (assuming that the underlying OS supports it).
# The default is on; turn this off if you serve from NFS-mounted
# filesystems. On some systems, turning it off (regardless of
# filesystem) can improve performance; for details, please see
# http://httpd.apache.org/docs-2.0/mod/core.html#enablemmap
#
EnableMMAP Off
# EnableSendfile: Control whether the sendfile kernel support is
# used to deliver files (assuming that the OS supports it).
# The default is on; turn this off if you serve from NFS-mounted
# filesystems. Please see
# http://httpd.apache.org/docs-2.0/mod/core.html#enablesendfile
#
EnableSendfile off
s-enablesendfile_off_before .jpg

before

456KB/s (3.5Mbps)




s-enablesendfile_off_after.jpg

after

3.65MB/s (29.2Mbps)




EnableMMAP ディレクティブ
http://httpd.apache.org/docs/2.0/mod/core.html#enablemmap
このディレクティブは配送中にファイルの内容を読み込む必要があるときに httpd がメモリマッピングを使うかどうかを制御します。 more・・デフォルトでは、 例えば、mod_include を使って SSI ファイルを配送 するときのように、ファイルの途中のデータをアクセスする必要があるときには Apache は OS がサポートしていればファイルをメモリにマップします。

このメモリマップは性能の向上を持たらすことがあります。 しかし、環境によっては運用上の問題を防ぐためにメモリマッピングを 使用しないようにした方が良い場合もあります:
マルチプロセッサシステムの中にはメモリマッピングをすると httpd の 性能が落ちるものがあります。
NFS マウントされた DocumentRoot では、httpd がメモリマップしている間にファイルが削除されたり 短くなったりしたときに起こるセグメンテーションフォールトのために httpd がクラッシュする可能性があります。

これらの問題に当てはまるサーバの設定の場合は、以下のようにして ファイルの配送時のメモリマッピングを使用不可にしてください:

EnableSendfile ディレクティブ
http://httpd.apache.org/docs/2.0/mod/core.html#EnableSendfile
このディレクティブはクライアンにファイルの内容を送るときに httpd がカーネルの sendfile サポートを使うかどうかを制御します。 more・・デフォルトでは、 例えば静的なファイルの配送のように、リクエストの処理にファイルの 途中のデータのアクセスを必要としないときには、Apache は OS が サポートしていればファイルを読み込むことなく sendfile を使って ファイルの内容を送ります。

sendfile は read と send を別々に行なうことと、バッファの割り当てを 回避します。しかし、プラットフォームやファイルシステムの中には 運用上の問題を避けるためにこの機能を使用不可にした方が良い場合があります:

プラットフォームの中にはビルドシステムが検知できなかった、壊れた sendfile のサポートが存在するものがあります。これは特に バイナリが別のマシンでビルドされ、壊れた sendfile のあるマシンに 移動したときに起こります。
Linux では、sendfile を用いると、 IPv6 使用時に存在する特定ネットワークカードの TCP-checksum オフロードのバグを踏んでしまいます。
ネットワークマウントされた DocumentRoot (例えば NFS や SMB) では、カーネルは自身のキャッシュを使ってネットワークからのファイルを 送ることができないことがあります。
これらの問題に当てはまるサーバの設定の場合は、以下のようにして この機能を使用不可にしてください:

私の環境ではこのようになりましたが各々の環境に依ると思います。

接続テストは双方ともBフレッツ光回線でサーバとクライアントで別々のプロバイダを利用しWan側でテストしました。

[admin ID:92RrOHSc] [Trackbacks:0] [English]
[記事固有URL:http://fula.jp/blog/index.php?no=r623]
[トラックバックURL:http://fula.jp/blog/ptb.php?no=623]



コメントについての補足事項

  • コメントは誰でもご自由にどうぞ。但し、営利目的の投稿はご遠慮下さい。
  • コメント内のhttp:// から始まる文字は自動リンクします。
  • 自動リンクしたくない場合は先頭に * (アスタリスク)をつけて *http:// としてください。
  • 投稿パスはコメント投稿後に修正、削除などの管理作業を行う時に利用します。
  • 設定した投稿パスは トリップ としても作用します。
  • ご自身で任意のパスワードを設定のうえ投稿して下さい。
  • 誹謗中傷など投稿内容によっては管理人の権限で削除、修正させて頂く場合があります。
  • 日本語を一定数含まない場合や句読点(点や丸)が使われていないコメントは投稿できません。
  • 正規書き込みパスには、はんかくかたかなで のし と記入下さい。スパム対策です。

名前

投稿パス

正規書き込みパス

コメント

確認後 :

投稿後の記事の修正削除

記事番号 : 投稿パス:

上記より投稿時に設定した投稿パスを入力して下さい。修正、削除などの管理作業を行う事が出来ます。

<< 花見で愛知万博広報飛行船 ツェッペリンNT号 | TOP | 立命館大学サイト 中国からクラッキング? >>

apache_powered.gif php5_powered.gif eaccelerator_powered.gif zend_optimizer_powered.gif xmail_powered.gif opera9_browser.gif

FLEUGELz