BLUE PROTOCOL の負荷テスト参加。アプリがスタックオーバーフローで起動できなかった件
マッチング負荷テスト実施について|BLUE PROTOCOL
BLUE PROTOCOL の負荷テスト参加はしたのですが、まともに起動できませんでした ・ω・
テスト開始から数十分でサーバーが落ちたのはまぁ、仕方ないのですが
ゲーム画面、これブラウザですね・ω・
<html><head><title>502 Bad Gateway</title></head> <body> <center><h1>502 Bad Gateway</h1></center> <hr><center>nginx</center> <!-- a padding to disable MSIE and Chrome friendly error page --> |
ログイン画面とかで右クリックするとソースが見えるのはどうなのか。
英語モードにすると、出て来るCookieの確認画面…謎い
プレイできなかったというのは、
ログインすると不定期にクラッシュするんです
このあたりまでたどり着けるならよい方で
ここまでたどり着けたのは30回ほど起動して2回だけ。
デバッグしてみたら、スタックオーバーフローでクラッシュしていました。
調べてみると、64bitアプリケーションなのにスタックコミットが4Kのままです。
ちなみに、Windows 2000のIE6もスタックコミットが 4Kのままなので、ちょっと複雑なコンテンツのあるサイトに行くと、スタックオーバーフローが原因でクラッシュします。それ以降の IEだと56Kが割り当てられています。(スタックコミットを拡張した魔改造版のパッチを適用するとWin2000でクラッシュするサイトが一部見えるようになるのを確認しています)
ちなみに、リザーブは、多Process、多スレッドで実行された時に予約されるスタックの仮想メモリサイズの全合計、という認識で、コミットは1プロセスで使用できる最大スタックだと考えています。
スタックの消費は、導入してるドライバや常駐しているCOMオブジェクト、セキュリティソフトなどで増減するので、多めに取っておくのがセオリーですね・ω・
Comments