HOME / コンピュータTips / Solaris / Apache / Solaris11標準のApacheを64bitで動作させる
Date: 2015/01/21 | | Tags: Solaris, Solaris 11, Apache, 64bit, 違い
Apacheは通常にインストールします。
sudo pkg install -v web/server/apache-22
64bitで動かすためには、次の様に行います。
sudo svcadm disable -s apache22 sudo svccfg -s /network/http:apache22 setprop httpd/enable_64bit = true sudo svcadm refresh -s apache22 sudo svcadm enable -s apache22
戻し方
sudo svcadm disable -s apache22 sudo svccfg -s /network/http:apache22 setprop httpd/enable_64bit = false sudo svcadm refresh -s apache22 sudo svcadm enable -s apache22
restartせずに最初にdisableしているのは、起動するDaemonが違うため、色々と不具合がでやすいためです。
ps -aef | grep httpd
64ビットだとこうなる。
webservd 2184 2180 0 02:12:12 ? 0:00 /usr/apache2/2.2/bin/amd64/httpd -D 64bit -k start webservd 2183 2180 0 02:12:12 ? 0:00 /usr/apache2/2.2/bin/amd64/httpd -D 64bit -k start webservd 2181 2180 0 02:12:12 ? 0:00 /usr/apache2/2.2/bin/amd64/httpd -D 64bit -k start webservd 2187 2180 0 02:12:12 ? 0:00 /usr/apache2/2.2/bin/amd64/httpd -D 64bit -k start root 2180 28381 0 02:12:11 ? 0:00 /usr/apache2/2.2/bin/amd64/httpd -D 64bit -k start webservd 2182 2180 0 02:12:12 ? 0:00 /usr/apache2/2.2/bin/amd64/httpd -D 64bit -k start webservd 2186 2180 0 02:12:12 ? 0:00 /usr/apache2/2.2/bin/amd64/httpd -D 64bit -k start
32bitだとこう
webservd 2083 2075 0 02:09:53 ? 0:00 /usr/apache2/2.2/bin/httpd -k start root 2075 28381 0 02:09:52 ? 0:00 /usr/apache2/2.2/bin/httpd -k start webservd 2080 2075 0 02:09:53 ? 0:00 /usr/apache2/2.2/bin/httpd -k start webservd 2079 2075 0 02:09:53 ? 0:00 /usr/apache2/2.2/bin/httpd -k start webservd 2082 2075 0 02:09:53 ? 0:00 /usr/apache2/2.2/bin/httpd -k start webservd 2078 2075 0 02:09:53 ? 0:00 /usr/apache2/2.2/bin/httpd -k start webservd 2081 2075 0 02:09:53 ? 0:00 /usr/apache2/2.2/bin/httpd -k start
メリット
デメリット
Solarisのmod_phpは32bit/preforkでしか動かないため、phpをpreforkで動かす必要がある場合は、32bitしかないでしょう。
実は64bit、workerにしても、phpを動くのですが、FastCGIになるため、メモリ効率は良くなるものの、動きに癖が出ます。この癖に対応できるなら問題はありませんが、対応できないなら32bitでしょう。
しかしそれ以外ではほとんど困らないので64bitにしても良いかなぁとは考えています。