- - PR -
COM+ 接続プーリングの同時複数起動について
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2006-03-02 14:37
現在、稼動中のWEBシステムの改修・調査を依頼されております。 が、以下、客先の要望自体が実現可能かどうかもわからず、悪戦苦闘しております。 是非、有識者の方のご助言を頂きたく思いますので、宜しくお願いします。 <システムの概要> ■OS Client:Windows2000Pro(SP4) Server:WINDOWS2000 SERVER SP4 ■開発用ソフト/言語 ASP(WEB画面).Netではありません。 MicroSoft Visual Basic 6.0 SP6 (WEB画面組み込み部品・DBへのコントロール) ■DB Oracle9i Release 9.2.0.1.0 - Production ■DBアクセス部品 COM+1.0によるADO接続 VBの参照設定で、「Microsoft OLE DB 」をチェックしたCLASSDLLを設定 ■ WEB画面の骨格はASPで構築されています。 DBアクセスなど、コントロールに関しては、VB(検索ボタンetc)で作成。 ■ DBへのコネクションがVBで作られたクラスDLLをCOM+へ登録、使用する事によって、 接続が行われる様(ほぼ自動的に接続が行われる)に構成されています。 ■ Oracle9iのユーザーデータが複数のカテゴリに分類される為、 同じDB内でDBスキーマが複数、存在します。 ■ 現在、COM+のコネクション・プーリング(バックグラウンドプロセス)を利用して、 接続が切れた場合等も、プールされた接続情報により、 すぐに再接続される様、動作しております。 ■ 例ですが、現在、スキーマAにDBLOGINした後、 スキーマBのデータはスキーマAの中にあるシノニム(別表)を利用して、 スキーマBのデータにアクセスしております。 ■ 接続の流れは、スキーマA→スキーマC→スキーマBとします。 (実際はこの組み合わせ分、全てあります。) ■ クラスDLLの接続文字列はレジストリの中に有り、 複数のDLLが絡んでいる為に、条件によって 文字列の中身を変えられません(文字列が完全に固定されています) ■ お客様の要望(ご希望)が、シノニムを使用したアクセスではなく、 例えば現在、クラスDLLでCOM+のコネクション・プーリング(バックグラウンドプロ セス)を利用して、スキーマAが稼動しておりますが、 同様に、上記部品を複製した別名のクラスDLLをでCOM+のコネクション・プーリング に登録して、 もう一つ、「スキーマB」を稼動させられないかとの、 強い要望を受け、調査しておりますが、よくわかりません。 ■ 「スキーマB」分のモジュールを作成し、実際に動作させると、 「スキーマA」分の前の接続情報が残っているのか(コネクションプーリング) ASPとVBのデバッガ等でテストしていると、動作が固まり、状態が不明です。 エラーコードも分かりません。 ORACLE上では、スキーマAとスキーマB両方の接続セッションが DBツール等により確認されました。 ■ (質問の要点) @ 上記要望が実現可能かどうか、 A 実現不可能であれば、なぜ行えないのか、その理由(例:バックグラウンドプロセス は二つ同時に起動できないetc) B 実現可能な場合、実際にどの様な手順を踏めば、行う事が出来るのか、 実現不可能な場合の理由だけでも構いません。 是非とも、ご教授くださいませ。 _________________ |
1