Tomcatで"Too many open files"なんて久しぶりに見たエラーでした。
そこで、オープンしているファイル数をチェック
lsof -p <プロセスID> | wc -l
プロセスIDは、psコマンドなどで調べます。
2012年04月11日
2012年04月10日
2012年04月08日
mod_proxy_ajpによるApache-Tomcat間通信でのエラー
DMZにApacheをリバースプロキシとして配置して、LAN内のTomcatへ
連携する仕組みで、
こんなタイムアウトエラーが発生しまして、ブラウザ上は503エラーとなるのですが、発生タイミングが1時間程度アクセスを行わないと発生して、エラー後は正常にアクセスできるようになるという状況。
エラーメッセージからGoogle先生に問い合わせるとmod_proxy_ajpのバグみたいな情報があり、mod_jkに切り替えないと直らないような情報が出てくる。まあ、それは最終手段として別の可能性を調査しました。
結論を言うと、今回はDMZ-LAN間にあるFWによって無通信間隔が監視されていて、Apache-Tomcat間のコネクションプールが自動的に切断されていることによるものでした。
切り分け方としては、先ず以下の"disablereuse=On"(http://httpd.apache.org/docs/2.2/ja/mod/mod_proxy.html)オプションを付けて、コネクションプール(常時接続)をOFFにしました。
これで現象は再現しなくなったので、コネクションプールが原因となっていることが切り分けられました。まあ、とりあえずこれで本対応でもいいのですが、多分以下のオプションを使用してもOKでしょう。
連携する仕組みで、
The timeout specified has expired: ajp_ilink_receive() can't receive header
(120006)APR does not understand this error code: proxy: read response failed from
ajp_read_header: ajp_ilink_receive failed
こんなタイムアウトエラーが発生しまして、ブラウザ上は503エラーとなるのですが、発生タイミングが1時間程度アクセスを行わないと発生して、エラー後は正常にアクセスできるようになるという状況。
エラーメッセージからGoogle先生に問い合わせるとmod_proxy_ajpのバグみたいな情報があり、mod_jkに切り替えないと直らないような情報が出てくる。まあ、それは最終手段として別の可能性を調査しました。
結論を言うと、今回はDMZ-LAN間にあるFWによって無通信間隔が監視されていて、Apache-Tomcat間のコネクションプールが自動的に切断されていることによるものでした。
切り分け方としては、先ず以下の"disablereuse=On"(http://httpd.apache.org/docs/2.2/ja/mod/mod_proxy.html)オプションを付けて、コネクションプール(常時接続)をOFFにしました。
ProxyPass ajp://192.168.24.XXX:8009/ disablereuse=On
ProxyPassReverse ajp://192.168.24.XXX:8009/
これで現象は再現しなくなったので、コネクションプールが原因となっていることが切り分けられました。まあ、とりあえずこれで本対応でもいいのですが、多分以下のオプションを使用してもOKでしょう。
ProxyPass ajp://192.168.24.XXX:8009/ keepalive=On
ProxyPassReverse ajp://192.168.24.XXX:8009/
2012年04月07日
目覚め
朝、ふくらはぎが急につって
起きました。
頭が働いていないので、パニクッたまま、もんどり
うっていました(^^;
なんとか、伸ばそうとしたのですが、ふくらはぎだと
いかんともしがたいのですよね。
結局、1日中歩くのに支障がでる程でした。
起きました。
頭が働いていないので、パニクッたまま、もんどり
うっていました(^^;
なんとか、伸ばそうとしたのですが、ふくらはぎだと
いかんともしがたいのですよね。
結局、1日中歩くのに支障がでる程でした。
2012年04月05日
VMWare ESX4 の罠?
http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1013299
VMWare ESX4の仮想マシンversion7の場合、
ゲストOSが32bitOSの時、
メモリを3GBまでしか認識しない。
仮想マシンを作成する時に警告出してくれ〜
VMWare ESX4の仮想マシンversion7の場合、
ゲストOSが32bitOSの時、
メモリを3GBまでしか認識しない。
仮想マシンを作成する時に警告出してくれ〜
2012年04月04日
MS-06ザクとうふ
生産が追いつかず量産体制を整えたそうで。
普通のスーパーで売り切れているようで。
http://sagamiya-kk.co.jp/zaku/
「ヒート・ホーク・スプーン」ってw
発想次第なんだなあと思いますが、
老舗が何故、量産型ザクと豆腐をコラボしたのか、その過程を知りたい
と思う今日このごろ。
思いつく人は、ファーストガンダム世代なのかな。
普通のスーパーで売り切れているようで。
http://sagamiya-kk.co.jp/zaku/
「ヒート・ホーク・スプーン」ってw
発想次第なんだなあと思いますが、
老舗が何故、量産型ザクと豆腐をコラボしたのか、その過程を知りたい
と思う今日このごろ。
思いつく人は、ファーストガンダム世代なのかな。