- - PR -
マルチスレッド動作を確認したい
| 投稿者 | 投稿内容 | ||||||||
|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2005-05-18 17:57
機能確認試験の試験項目はこれから作成するのですか? 問題の同期処理を外そうが外すまいが、
アプリケーションに対する要件が変化したわけではないので、機能確認試験とやらの内容が 変わる訳ではないですよね? | ||||||||
|
投稿日時: 2005-05-18 18:10
今作成中です。 そういう意味で言うと、基本機能は変わったわけではないが、修正によるデグレ確認 という言い方の方がわかりやすいかもしれないですね。 それとシュンさんのおっしゃるようにリモートデバッグか何かで見るのは多いにアリ だとは思いますが、サーバ側の起動スクリプトの変更などちょっとわずらわしい面も ありますね。 実施員は私ではないかもしれないため、万人が比較的簡単にできるような確認方法を 模索しております。 # 難しいけど | ||||||||
|
投稿日時: 2005-05-18 18:14
あるブロック内を複数のスレッドが同時に実行しているのを確認すればいいんですよね?
こういうのはどうですか?
| ||||||||
|
投稿日時: 2005-05-18 18:29
ソースに手を入れるのが一番簡単だとは思うんですが なにぶん試験なもんで簡単にコード修正できないんですよねぇ。 今のところ、スレッドダンプ複数回とってwaitがないことを確認する で十分かなとも思ってます。 | ||||||||
|
投稿日時: 2005-05-18 18:30
対象のソースコードをいじっていいのなら、長時間のSleepでもかませるのが
手っ取り早いと思いますが。 サーバーの起動スクリプトの変更って面倒ですか? JVM起動時引数にこんなのを一行追加するだけですよね… -Djava.compiler=NONE -Xnoagent -Xdebug -Xrunjdwp:transport=dt_socket,address=<port-number>,server=y,suspend=n | ||||||||
|
投稿日時: 2005-05-18 18:45
はい、わかっております。 面倒と言ったのは「政治的に面倒」ということです。 たかだか一項目ごときで環境に手入れんじゃねーよ、と言われそうでこわいです。 # 何故かというと大きいシステムで、方々から検証されてまして。 # 簡単にstop&startができないので ただ、ちょっとこの項目をここでやるべきかどうかも悩ましくなってきたので その辺も含めて検討しようかと思います。 項目としては、そのようにパラメータ変更を記述しておいて、後でできないと なったら性能試験で確認とかもアリかなとか思ったり。 # 性能試験だと色々モニタリングとかもするだろうし | ||||||||
|
投稿日時: 2005-05-18 19:22
なるほどです。
デバッグ実行だのソースコード修正だのは、あくまで動作確認レベル の確認事項としておいて、本格的な確認はロギングコードを埋め込ん だうえで後のフェーズで、というのがしっくりきそうですね。 | ||||||||
|
投稿日時: 2005-05-18 23:55
unibon です。こんにちわ。
たとえば Windows だったら、ハイパースレッディングをオンにして、CPU 負荷が 50% + 0% = 50% にならず、50% + 50% = 100% になっているかを確認するのではダメでしょうか? #例の件で、せっかくハイパースレッディングをオフにしたばかりなのに〜、と言われることも多そうですが。 #ほかには、ハイパースレッディングをオンにしたら、パフォーマンス云々どころかバグが出てしまった(隠れていたバグがあらわになってしまった)、となってしまう危険性(?)もありますね。これはほんとうは嬉しいことなのですが。
しかしこれだとハイパースレッディングをオンにするのも無理っぽそう。 | ||||||||
