- PR -

Machine.configにおけるrequestLimitについて

1
投稿者投稿内容
ターキッシュ
大ベテラン
会議室デビュー日: 2003/01/15
投稿数: 126
投稿日時: 2004-08-12 18:31
いつも勉強させていただいております。

Windows Server 2000+IIS5において、ASP.NETで作成
したWebアプリケーション実行中に、高負荷な状態で実行
し続けたところ、アプリケーションエラーが発生しました。

その際に、タスクマネージャーでaspnet_wp.exeのプロセス
を一端終了させたところ、無事再稼動し始めたので、
自動的な再起動を試みようとMachine.configにおける
requestLimitを設定しようとしたのですが、そもそも

_____________________________
requestLimit
要求数を DWORD 値で設定します。要求数を超えると、
現在のワーカー プロセスの代わりに新しいワーカー
プロセスが再起動されます。既定値は infinite です。
これは、プロセスを再起動しないことを示します。
_____________________________

msdnに上記のように記載されておりますが、一体要求数
とは何をしめすのでしょうか?
ASP.NETによって稼動しているページのアクセス数なの
でしょうか?
どうもそれではないような気がします。

どなたかご存知の方いらっしゃいましたらご教授よろしく
お願いします。
小野@どっとねっとふぁん
ぬし
会議室デビュー日: 2001/10/30
投稿数: 402
投稿日時: 2004-08-16 09:30
1つのWebアプリケーションに対する同時リクエストの数じゃないでしょうか。
Webアプリケーションが
a.aspx
b.aspx
c.aspx
という3つのaspxから構成されている場合、それぞれがある時点で同時に
処理しているリクエストの数の合計、ということだと思います。

#試したわけじゃないので、はずしているかも。
なちゃ
ぬし
会議室デビュー日: 2003/06/11
投稿数: 872
投稿日時: 2004-08-16 10:09
引用:

小野@どっとねっとふぁんさんの書き込み (2004-08-16 09:30) より:
1つのWebアプリケーションに対する同時リクエストの数じゃないでしょうか。
Webアプリケーションが
a.aspx
b.aspx
c.aspx
という3つのaspxから構成されている場合、それぞれがある時点で同時に
処理しているリクエストの数の合計、ということだと思います。


requestLimit の方は、本当にトータルの要求数だったと思います。
# なのでデフォルトが Infinite

同時要求数とかは、requestQueueLimit とかが該当すると思いますが、これは別に再起動させる設定ではなくて、単なる上限設定ですね。

とりあえず、アプリケーションエラーというのが何か、負荷が大きいときに何が起こっているのかを確認した方が良いのではないでしょうか?
ターキッシュ
大ベテラン
会議室デビュー日: 2003/01/15
投稿数: 126
投稿日時: 2004-08-17 19:33
小野様、なちゃ様ご返答ありがとうございました。
ご返事遅れて申し訳ありません。

引用:

なちゃさんの書き込み (2004-08-16 10:09) より:

同時要求数とかは、requestQueueLimit とかが該当すると思いますが、これは別に再起動させる設定ではなくて、単なる上限設定ですね。

とりあえず、アプリケーションエラーというのが何か、負荷が大きいときに何が起こっているのかを確認した方が良いのではないでしょうか?



状況としましては、2000サーバーにおいて、ASP.NETの
Webアプリケーションをサービスをしておりますが、
先日
_______________________________________________________________

アプリケーション ポップアップ:Microsoft Visual C++ Runtime
Libraly : Runtime Error!

Program:C\WINNT\Microsoft.NET\Framework\v1.1.4322\aspnet_wp.exe

R6016
- not enough space for thread data

_________________________________________________________________

のポップアップが多発しまして、サービスしているページは
「アプリケーションエラー」を返すようになっていました。

このページはWebRequestによってWeb上のファイルを取得して
表示するものですが、ネットワークで障害が発生し、取得でき
ない状況になりました。
その際、timeout値を10秒に設定していたのですが、その10秒
の間にもリクエストが殺到し、このような状況になったものと
思われます。

高負荷であったことは 間違いないのですが、似たような環境
の2003サーバでは問題ありませんでした。

そこで、2003+IIS6ほどのリカバリ機能は無いにせよ、
2000+IIS5において何か方法は無いかと探しましたところ
このrequestLimitに行き着きました。

ひょっとして、これを設定してもあまり期待できないものなの
でしょうか?

1

スキルアップ/キャリアアップ(JOB@IT)