たとえば、180のジョブが同時にOracleにアクセスしようとするセットアップがあります。 ftp接続をオープンします。私はこれがオープンあまりにも多くの接続が原因であると考えていOracle:サポートされている接続の最大数を確認する
Listener refused the connection with the following error:
ORA-12520, TNS:listener could not find available handler for requested type of server
:
は、Oracleから、私はエラーを取得します。 これは、ログインを拒否するアプリケーションのGUIにも影響します。
実行するジョブの安全な数を同時に決定するにはどうすればよいですか?
エラーをどのように処理すればよいですか?私は眠りと再試行でそれを処理しようとしましたが、これの唯一の効果は、TNSリスナーが常に飽和し、同時に実行されているジョブの数が180に増加するようです。
は、なぜあなたは、ジョブを実行する前に、データベースへの接続を開いている:この主題にOracle実世界のパフォーマンスチームがまとめ、この動画を見たことがありますか? Oracleに問い合せる前にFTP接続が使用可能かどうかを確認し、FTP接続が保護されている場合にのみジョブを実行します。 – Nathan
これは良い提案ですが、ftpサーバーの接続データはデータベースから取得しています。 – Adder
アプリケーションのdb接続の使用を規制するには、接続プーリングが良い考えです。あなたの現在のセットアップは基本的にあなた自身のdbに対するDoS攻撃です。 – tbone