एक जावा परियोजना में, मैं एक ojdbc6 जारओरेकल getConnection धीमी
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>11.2.0.1.0</version>
<scope>compile</scope>
</dependenc>
एक दिन मैं चलाने के लिए पहली बार उपयोग कर रहा हूँ, dataSource.getConnection() तेजी से है। दूसरी बार आमतौर पर ठीक है। अगले कुछ बार लगभग 45 सेकंड लगते हैं। उसके बाद, इसमें कई मिनट लगते हैं। एक बार मेरे पास किसी दिए गए एप्लिकेशन रन का पहला कनेक्शन हो जाने के बाद, मुझे प्राप्त होने वाले किसी भी नए कनेक्शन बहुत तेज़ होते हैं। यह देरी केवल दिए गए रन के लिए पहला कनेक्शन प्राप्त कर रही है।
मेरा पहला कनेक्शन इतना धीमा कर रहा है क्या?
मैं नेटस्टैट देख रहा हूं और सफल रन के बाद किसी भी कनेक्शन को लटकाना नहीं देख रहा हूं। किसी भी भाग्य के साथ कई अलग-अलग कनेक्शन पूल (डीबीसीपी, सी 3 पीओ) की कोशिश की है।
Connection con = dataSource.getConnection();
कोई भी विचार: स्रोत कोड के माध्यम से डीबगिंग, देरी org.springframework.jdbc.datasource.DataSourceUtils की लाइन पर 100% है?
अधिक जानकारी
1) मैं एक कनेक्शन पूल (DBCP या C3PO) जो भविष्य में उपयोग के लिए कनेक्शन की बचत होती है उपयोग कर रहा हूँ के लिए संपादित। जब मैं एक नया कनेक्शन प्राप्त करने के बारे में बात करता हूं, मेरा मतलब है कि पहला कनेक्शन उपयोग में है .. मुझे डीबी में जाना और नया कनेक्शन प्राप्त करना है। निस्संदेह मैं वापस लौट सकता हूं और कनेक्शन पूल से बार-बार अपना कनेक्शन प्राप्त कर सकता हूं। लेकिन एक ही समय में एक सेकंड प्राप्त करना भी तेज़ है।
2) मुझे नहीं पता कि मेरे डीबी ने मुझे कितने कनेक्शन लॉग इन किए हैं। कोई विचार जहां यह संपत्ति ओरेकल में है?
शायद इस लेख तय करने जा [कैसे जाँच करने के लिए ओरेकल डेटाबेस के लिए अधिकतम कनेक्शन की अनुमति?] (http://stackoverflow.com/questions/162255/how-to-check-the- अधिकतम- संख्या-of-allowed-connections-to-an-oracle-डेटाबेस) आपके लिए दिलचस्प है – lkdg