Oracle 11G データベース (現在、10 ~ 12 の異なる Oracle データベースを接続しています) に接続する Java アプリケーション (Web ベース) を作成し、そこからデータを読み取る必要があります (すべて選択クエリです)。
この配列リストを繰り返した後、各データベースを接続し、select クエリを起動し (すべてのデータベースで起動したのと同じクエリ)、record を取得し、それを 1 つのグローバル コレクション リストに入れて接続を閉じ、このループで同じプロセスを続けます。
現在、私は複数のデータベースを接続する「実行者」です。もう一度使用し ExecutorService executor = Executors.newFixedThreadPool(20);
て、私に1つの驚きを与えてください。最初のデータベース接続を作成する場合、すぐにログが表示されますが、後続のデータベース接続では 60 秒後にログが出力されるため、すべての接続で 60 秒以上かかる理由がわかりません。論理的には、すべての接続が同じように時間がかかるはずです。
このアプリケーションのパフォーマンス改善を提案してください。