apache

Link: CLON - 2006/02/20 - lighttpd+fastcgi時のメモリ共有

| | |
CLON - 2006/02/20 - lighttpd+fastcgi時のメモリ共有 このパターンで実行すると親プロセスがlighttpdになっている以上,forkする元がlighttpdなので,共有されるはずがありません。WebプログラマのためのCopy On Write解説:mod_perl/FastCGIでメモリを節約する方法 | Typemiss.netに書いたとおりです。もうちょっとしっかり実験しておきましょう。

TT2はCopy On Writeと相性が悪い

| | |
CoWでテンプレートキャッシュを共有!(C::V::H::T編) | Typemiss.netではHTML::Templateのテンプレートキャッシュを共有させてメモリを節約する話を書きましたが,同じことをCatalyst::View::TTでやろうとするとどうなるか,です。 TT2はH::Tに比べて内部が複雑で,普通に読み込ませておくだけではうまく共有することができませんでした。色々小細工をしてみたものの,copy on writeの発生を防ぐことができず,どうやっても子プロセスごとにメモリを用意する必要があるようです。

WebプログラマのためのCopy On Write解説:mod_perl/FastCGIでメモリを節約する方法

| | | |
Perl:forkしたプロセス間でのメモリ領域の共有 (Link: 遅レス。 - Apache + mod_perl - MaxClients の値に注意) | Typemiss.netの後,LinuxのCopy On Writeについて調べてみました。 このエントリではLinuxのCopy On Writeの挙動を簡単に説明し,mod_perlやFastCGI環境の場合に,どういうことがおこっているのか,どうすればそのような環境でメモリを節約できるのかについて説明してみます。・・・あまり分かりやすくなっていないかもしれませんが。

Perl:forkしたプロセス間でのメモリ領域の共有 (Link: 遅レス。 - Apache + mod_perl - MaxClients の値に注意)

|
遅レス。 - Apache + mod_perl - MaxClients の値に注意 共有されてるメモリ領域は/proc/$pid/smapsで取れます。Linux::Smapsを使うとプロセス全体での合計が見れたりして便利です。 Linux::Smapsの例を見るとLinuxのcopy on writeで共有されている様子が分かりやすいです。Apache + mod_perlやFastCGIで大量にforkするときには注意が必要ですね。

dev-php/eacceleratorとapache

|
えーと・・・dev-php/eaccelerator-0.9.3だとMPM-preforkなapache2でしか使えない。 dev-php/eaccelerator-0.9.3-r1だとその文言が消えている。 ・・・なんで? 本体バージョン上がってないのに? えーと・・・phpはスレッドセーフじゃなくって,だからどうしようもなくって・・・ apache2をworkerで動かすのをやめると・・・あれ,mod_perl諦めないとPerlもthread切って入れなおしな羽目に? モジュール全部もう一度? うーん・・・分からん。ま,いっか,放置しよ。そのうちしっかり考え直そう。

mod_fastcgiとmod_fcgidとlighttpd

| |
ざっと試してみた。 ab2 -k -c 10 -n 10000 http://localhost/fcgi/tiny-cgi2.fcgiとして比較。 結果としてはデフォルトオプションならmod_fcgidが50%ほど速いということで。 それ以上にlighttpdとかは速いんだけど。 Webサーバ側でFastCGIのプロセス管理やるより外部でspawn-fcgiなどを使って管理した方が速いようだ。

mod_fcgid - An alternative FastCGI module for Apache2 とPHP

|
The mod_fcgid Home Page, mod_fcgid is an Apache2 module for FastCGI protcol ふむ。mod_fastcgiとどう違うのやら・・・ あれ? 「マルチスレッドなApacheとPHPを一緒に動かすのは推奨されない。だから,これ使うと良いよん。」ってそうだったのか?

apache2 on gentoo on coLinux

| |
うーむ。設定何もいじっていないとはいえ,coLinux上のapacheは遅すぎ。1515 req/secって・・・ そもそもファイルI/Oが遅いからか・・・
コンテンツのシンジケート