[Ultramonkey-l7-users 424] Re: [Ultramonkey-l7-develop 702] Re: Re: Failed to add virtual service to l7vsd エラーについて

Back to archive index

中居憲久 n.nak****@sdy*****
2011年 7月 8日 (金) 14:36:50 JST


中居です。
お疲れ様です。

> スタックサイズですが、どのくらい必要かはおっしゃるとおり、
> トライ&エラーになるかもです。。
> スタック必要サイズを意識して作られてるようには見えないですし・・・
> C++で作られてますし・・・
> Cなら、pthread関連のAPIで設定したりしますけど。

必要スタックサイズは以前田沼さんが調べていたと思いますが、
基本的に本体側ではなく、プロトコルモジュールに依存します。
本体側はVS起動時にリソースを殆ど確保し終えますが、
(thread間の小さなメッセージなどはメモリを確保します)

スタックサイズを確定するのに必要な部分はプロトコルモジュールになります。
理由はclientやserverから送られてきたデータにおいて、
httpヘッダを解釈できるところまでプロトコルモジュール内部にて
データを読み込み、解釈出来きた時点で振り分け先を確定するからです。

#MAXは決められたと思います。と、云う訳で一応スタックサイズも意識しています。

ですので必要スタックサイズはhttpヘッダサイズ依存になります。
巨大なヘッダを利用する環境であれば多めになります。

以上、よろしくお願いいたします。


> 
> と、ぐぐってみたらこんなブログ見つけました。
> http://0xcc.net/blog/archives/000115.html
> 
> こんなのあったんですね。知らなかった。
> とりあえず、自分のもってるカーネルgitリポジトリから、
> checkstack.plを取ってきてメールに添付してみます。
> 
> いま、UltraMonkey-L7がない環境にいるので、竹内さんのほうで
> ブログにあるように、
> 
> # objdump -d `which l7vsd` | perl checkstack.pl
> 
> とかで、どのくらいになるか計ってみてください。
> 
> あ、でもスレッドのスタックとかはどう計るんだろ・・・
> まあ、上記で目安にはなるかな?
> 
> たぶん、1スレッドあたり1MBも使わないと
> (あてずっぽうでw)予想してます。
> 
> (2011/07/08 9:46), takep****@gmail***** wrote:
>> 中野様
>>
>>  ご回答ありがとうございます。
>> レスポンスが遅くて申し訳ありません。
>>
>>  ご教示いただいた通りに設定してみましたところ、無事に動作しました!
>>
>>  /etc/security/limits.conf に下記内容を追記し、
>>
>>> * soft stack 5120
>>> * hard stack 5120
>>
>>  ログインしなおしてからl7vsd、l7directordを再起動したところ、無事
>> 7ポートの起動が確認できました。
>>
>>  現在テスト運用しているサーバはultramonkey-l7専用です。
>> 動作に必要なスタックサイズを調べたいのですが、トライ&エラーで探って
>> いく感じでしょうか?
>>
>>  アドバイスいただき、本当にありがとうございました。
>>
>>
>> On Tue, 05 Jul 2011 16:45:56 +0900
>> 中野 宏朗<nakan****@nttco*****>   wrote:
>>
>>> 竹内さん
>>>
>>> 中野と申します。
>>> こんにちは。
>>>
>>> ulimit -s 5120
>>>
>>> とか設定設定したら、6ポートとか7ポートで、32スレッド動いたりします?
>>>
>>> ulimit -a の出力みたら、1スレッドあたりのスタックサイズが10MBに
>>> なっているので、
>>>
>>> 6ポート×32スレッド×10M = 1920MB
>>>
>>> となって、カーネルが占有するメモリも考えると、2GBのメインメモリじゃ
>>> 足らなくなってるんじゃないかな〜、と。
>>> UltraMonkey-L7は、きっとスタックサイズに10MBもいらないと
>>> 思うんで、スタックサイズを減らしてみてはどうでしょう。
>>>
>>> 他のアプリとの同居でスタックサイズが10MB必須とかなら、UltraMonkeyの
>>> スレッド数かポート数を減らすしかないかも。
>>
>> _______________________________________________
>> Ultramonkey-l7-develop mailing list
>> Ultra****@lists*****
>> http://lists.sourceforge.jp/mailman/listinfo/ultramonkey-l7-develop
>>
>>
>>
>> _______________________________________________
>> Ultramonkey-l7-users mailing list
>> Ultra****@lists*****
>> http://lists.sourceforge.jp/mailman/listinfo/ultramonkey-l7-users


-- 
中居 憲久              n.nak****@sdy*****
株式会社SDY            TEL:047-401-7210    FAX:047-401-7207
NAKAI Norihisa         TEL:+81-47-401-7210 FAX:+81-47-401-7207
SDY Corporation.





Ultramonkey-l7-users メーリングリストの案内
Back to archive index