[PHP-users 24038] Re: スレッドセーフでない?
Moriyoshi Koizumi
moriyoshi @ at.wakwak.com
2004年 12月 30日 (木) 15:42:12 JST
小泉です。
# この問題、解決済みかもしれませんが参考になれば。
On 2004/12/23, at 17:35, HOTTA Michihide wrote:
> /etc/alternatives/apache2 -> /usr/sbin/apache2.worker
>
> デフォルトはワーカスレッド?
<snip>
> PHP のビルドオプションを調べてみても、
>
> $ ./configure --help|grep thread
> --enable-maintainer-zts
> Enable thread safety - for code maintainers only
> --with-tsrm-pthreads
> Use POSIX threads (default)
>
> という感じで、特にそれらしい指定が見当たりません。某所からの情報
> で、--enable-roxen-ztsを入れてみたらというのがありましたが、同じ
> でした。どなたか、apache2 + php5 で動かしている方がおられましたら、
> 設定を教えていただけないでしょうか?
Apache2 側が worker MPM ですと、
--enable-maintainer-zts オプションが必要になります。
--with-tsrm-pthreads はホストが Linux の場合デフォルトで選択されます。
# --enable-roxen-zts は Apache との組み合わせの中では無関係です。
ZTS (=Zend Thread Safety) が有効になったバイナリを prefork MPM と
組み合わせてもとくに表立って問題が出る事はありませんが、
一般的に ZTS が有効にしてあると、アーキテクチャにもよりますが
実行速度が 10% 程度低下します (コンパイラによる最適化なしで)。
PHP-users メーリングリストの案内