ストレス テストを行う Web アプリケーションを開発しました。このアプリは Flash SWF を使用して、ユーザーがマシン上の画像を参照し、それらを Web サーバーにアップロードできるようにします。この SWF は、ローカル ファイル システムから jpg 画像を読み取り、サイズを変更してサムネイルを生成し、これらを byteArray として AMFPHP スクリプトにアップロードします。AMFPHP スクリプトは、バイト配列を .jpg ファイルとしてwebserver
データベースに画像を記録し、画像を送信します。ストレージ用に Amazon S3 に。
送信されたヘッダー情報とバイト配列を記録するため、うまく機能する WAS を使用してこれをストレステストしようとしています。これにより、複数のユーザーをシミュレートできます。:)。
ただし、すべての画像が S3 に送信されているわけではなく、すべての画像がデータベースに追加されているわけではありません。これは、遅延フィールドで WAS が許可するよりも多くの時間をスクリプトが必要とするためだと思われるので、私の質問は -
WAS インターフェイスで指定した遅延に固執するのではなく、スクリプトの実行が完了するまで待機するように WAS に指示する方法はありますか? イメージがデータベースに追加されるか、S3 に送信される前に、バイト配列を受け取ってファイルを書き込む AMFPHP スクリプトが終了していないと考えています。
スクリプトが完了したことがわかるまで WAS を強制的に待機させることができれば、ボトルネックがどこにあるかをより明確に確認できます。約 100 のクライアント (10 スレッド * 10 ソケット) をシミュレートしているため、おそらく、このステップで処理できるよりも大きな負荷がかかっています!
これは、テスト ツールが実際のシナリオを正確にシミュレートしないケースでしょうか。実際には、Flash は、データベースにレコードを作成して送信するスクリプトを呼び出す前に、イメージが書き込まれたという AMFPHP からの成功応答を待機します。 S3にファイル?これが問題にならないように、これらのスクリプトを 1 つのスクリプトに結合する必要がありますか?
この歓迎に関するアドバイス。私たちの Web サーバーは、Windows 2003 IIS 6 マシンです。