Apache - make |
|
Apacheのコンパイル最適化 |
・configure | |
今回は、CGIをユーザー権限で実行するため、suexecを有効にした。(--enable-suexec) モジュールを追加で組み込めるように、DSOを組み込んだ。(--enable-module=so) XMLモジュールであるEXPATを無効にした(--disable-rule=EXPAT=no) コマンドでは、 ./configure --enable-suexec --enable-module=so --disable-rule=EXPAT=no --suexec-caller=www 以上の3項目の内、suexecとDSOの組み込みは高速化のためではなく、利便性とセキュリティの為である。 より高速化するためには、有効にしない方が多分早い。 | |
・make | |
コンパイル時に最適化オプション-O2を追加する。 具体的には、apacheの展開場所/src/apaciというファイルにecho '-O2 'を追加すればよい。 ただし、./configureするたびに上書きされるので注意。(configureにそういうオプションあるかな?) 今回は、ライブラリをスタティックリンクを指定しなかった。スタティックリンクしたければ、apaciにecho '-static 'を追加すればよい。 理由は幾つかあるが、DSOなので、スタティックリンクしてもあんまり変わらない気がすることと、スタティックリンクしたバイナリが結構巨大になってしまった為である。(書き込まれないメモリー領域は共有されるはずなので、これでもそんなにメモリーは喰わないのかも?) MaxClientsの値を大きく取れるようにするため、apacheの展開場所/src/include/httpd.hにある、HARD_SERVER_LIMITの値を大きくする。(今回は1024に設定) この値より大きいhttpd.confのMaxClientsの値は無視される。 上記ファイルに追加後、make clean;make install(手抜き(^^;)した。 |