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

जावा थ्रेड सुरक्षित डेटाबेस कनेक्शन

मुझे नहीं लगता कि डेटाबेस कनेक्शन को थ्रेड-सुरक्षित बनाना एक आम बात है। आमतौर पर आप जो चाहते हैं वह या तो है:

  • अपने सर्वलेट के कुछ हिस्से तक पहुंच को क्रमबद्ध करें, ताकि एक समय में एक से अधिक सर्वलेट निष्पादन कोड न हो (उदाहरण के लिए SingleThreadModel को लागू करना) इंटरफ़ेस)।
  • किसी विशेष तालिका/तालिका पृष्ठ/पंक्ति को लॉक करना ताकि आप किसी विशेष टपल पर काम कर सकें (डेटाबेस अलगाव स्तर को बदलकर)।
  • तालिका में संशोधित पंक्तियों का पता लगाने के लिए आशावादी लॉकिंग का उपयोग करना (तालिका के कुछ संदर्भ विशेषता का उपयोग करके यह जांचने के लिए कि क्या वर्तमान संस्करण वही है जो तालिका में है)।

AFAIK, ThreadLocal<Connection> . का विशिष्ट उपयोग प्रति थ्रेड एक अद्वितीय डेटाबेस कनेक्शन संग्रहीत करना है, ताकि एक ही कनेक्शन को हर बार एक पैरामीटर के रूप में पारित करने की आवश्यकता के बिना आपके व्यावसायिक तर्क में विभिन्न तरीकों से उपयोग किया जा सके। चूंकि सामान्य सर्वलेट कंटेनर कार्यान्वयन HTTP अनुरोध को पूरा करने के लिए थ्रेड का उपयोग करता है, इसलिए दो अलग-अलग अनुरोधों को दो अलग-अलग डेटाबेस कनेक्शन का उपयोग करने की गारंटी दी जाती है।



  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. MySQL आधारित वेब ऐप:उपयोगकर्ताओं के लिए ऑर्डर या आइटम चुनने का सबसे आसान तरीका?

  3. मूल माता-पिता प्राप्त करना

  4. मैं 'स्तंभ के लिए समायोजित सीमा से बाहर मान' त्रुटि को कैसे ठीक करूं?

  5. MySQL-पायथन इंस्टॉल - अंडा नहीं बना सका