Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

स्प्रिंग ऐप 8 घंटे के बाद MySql से कनेक्शन खो रहा है। कैसे ठीक से कॉन्फ़िगर करें?

संक्षिप्त उत्तर यह पर्याप्त होना चाहिए। DBCP कनेक्शन पूल (डिफ़ॉल्ट) से उधार लेने पर कनेक्शन के परीक्षण का समर्थन करता है, लेकिन वापसी पर परीक्षण और निष्क्रिय होने पर परीक्षण का भी समर्थन करता है।

यह समझने लायक भी है कि यहां क्या गलत हो रहा है। ऐसा लगता है कि आपके टॉमकैट सर्वर और डेटाबेस के बीच कुछ टाइमआउट (जैसे राउटर या फ़ायरवॉल) के बाद निष्क्रिय कनेक्शन छोड़ रहा है। इसके साथ समस्या यह है कि टॉमकैट सोचता है कि उसके पास अभी भी एक वैध कनेक्शन है, कनेक्शन के साथ कुछ काम करने की कोशिश करता है और विफल रहता है, लेकिन कनेक्शन को जीवित रखता है और इसे पूल में वापस कर देता है। अब डेटाबेस से बात करने का कोई और प्रयास विफल हो जाएगा यदि उसे पूल से वही टूटा हुआ कनेक्शन दिया जाए।

मुझे लगता है कि यह माइकल न्यागार्ड की उत्कृष्ट 'रिलीज़ इट!' थी। पुस्तक जिसने इस परिदृश्य का वर्णन उसकी खाई से निकली कहानियों में से एक में किया है।

आप यह भी देखना चाहेंगे कि MySQL मृत कनेक्शन को कैसे साफ करता है जब 8 घंटे के बाद टॉमकैट कनेक्शन खो देता है तो डीबी भी असफल कनेक्शन से अनजान होगा।

एक अंतिम बिंदु, यदि आप टॉमकैट 7 का उपयोग कर रहे हैं तो उनके नए कनेक्शन पर स्विच करें। पूल क्योंकि यह DBCP से बेहतर प्रदर्शन प्रदान करता है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. डुप्लीकेट कुंजी के साथ तैयार विवरण

  2. प्रकार बूल के मूल्य पर सरणी ऑफ़सेट तक पहुँचने का प्रयास कर रहा है

  3. MySQL में एक संचयी योग कॉलम बनाएं

  4. MySQL में क्वेरी कैशिंग को रोकना

  5. पता करें कि क्या REPLACE स्टेटमेंट बदल दिया गया है या सिर्फ MySQL में डाला गया है