- PR -

JDBCでトランザクションについて

投稿者投稿内容
javan
会議室デビュー日: 2003/03/03
投稿数: 18
投稿日時: 2003-06-18 23:26
複数リクエストにまたがるトランザクション
(ユーザからの複数のリクエスト間のトランザクション)は
絶対行うべきではないです。というのも1番目のリクエストのあと2番目、3番目
のリクエストが来ることは保証できないからです。
またそのように長時間コネクションを保持したままであると、1番目のリクエスト
を100人が送り、誰も2番目以降をリクエストしないとコネクションが
タイムアウトするまで100個のコネクションが維持されたままになり、
他の人が1番目のリクエストを投げてもDBのコネクションがMAXになり処理が行えない
ことも発生しかねません。

victorさんの希望する事を実現するのであれば、小僧さんが言っているようにセッション
にデータを持っておくか、一時的なDBのテーブルを使用して毎回コミットするように
したほうが良いと思います。


[ メッセージ編集済み 編集者: javan 編集日時 2003-06-18 23:34 ]
victor
常連さん
会議室デビュー日: 2002/10/29
投稿数: 46
お住まい・勤務地: アスンシオン - パラグアイ
投稿日時: 2003-06-19 05:28
Javanさん、全くその通りです。
皆さんどうもありがとうございました、これからもよろしくお願いします。
小僧
ぬし
会議室デビュー日: 2002/08/14
投稿数: 526
投稿日時: 2003-06-19 12:59
セッションにはかなりのデータを登録できます。限度は知らないですが、困ったことはありませんよ。ちなみにセッションは登録したインスタンスの生存時間やアクセスできるプログラムの範囲に応じて、複数の種類が存在します。詳しい話はWeb上で調べていただくとして、便利に使える物なので是非使ってみてくださいね。
まりり
ぬし
会議室デビュー日: 2001/12/05
投稿数: 329
投稿日時: 2003-06-19 14:05
引用:

victorさんの書き込み (2003-06-18 22:29) より:
小僧さんありがとうございます。
セッションの使い方をまだ良く理解してないので基本的な質問をしますが、セッションには保存できるデータにリミットはありますか?、もしセッションを使用した場合、40個近くのデータ(ほとんどがStringですけど)を保存しますが、パフォーマンスには影響しませんか?



この程度のデータなら気にする必要はないです。
セッションにデータを保管する場合、同時にどれくらいのセッションが発生するのかを
検討すればよいと思いますよ。

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