Apache2.2 を worker モジュールで動かす

  • 投稿日:
  • by
  • カテゴリ:
  • ハッシュタグ:

FastCGI による高速化に味をしめて、今度はApache 2.2.14 を MPM worker で動かしてみることにしました。

MPM workerで動かすには、Apacheを再コンパイルする必要があります。
ウチのはportsで入れているので、/etc/make.conf を

# added admin for apache22 worker
.if ${.CURDIR} == "/usr/ports/www/apache22"
WITH_SUEXEC=yes
WITH_MPM=worker
WITH_THREADS=yes
WITH_MEM_CACHE=yes
WITH_CGID=yes
.endif
 
.if ${.CURDIR} == "/usr/ports/databases/mysql5*"
WITH_CHARSET=utf8
BUILD_OPTIMIZED=yes
BUILD_STATIC=yes
. endif
 
.if ${.CURDIR} == "/usr/ports/lang/perl5.8"
WITH_THREADS=yes
WITH_GDBM=yes
ENABLE_SUIDPERL=yes
. endif
 
# added by use.perl 2010-02-19 21:28:05
PERL_VERSION=5.8.9

としました。 MySQL と Perl については「ついで」です。

www# setenv FORCE_PKG_REGISTER yes

としてから、apache22、mysql55-server、perl5.8 を make reinstall しました。

あと、/usr/local/etc/apache22/httpd.conf に以下の記述を加えました。

<IfModule worker.c>
    StartServers         2
    MaxClients         150
    MinSpareThreads     25
    MaxSpareThreads     75
    ThreadsPerChild     25
    MaxRequestsPerChild  0 #0は無制限を意味する
</IfModule>

Apache と MySQL をどちらも再起動してみましたが、どちらもちゃんと動いているようです。
これで Dual Core × Hyper ThreadingAtom D510 の能力を、フルに引き出すことができるかな?

効果ですが、Webページの表示が以前はモッサリしていたのが、若干速くなったというかキビキビしたような気がします。 プラセボかもしれませんけどね。