Django का ORM थ्रेड-स्थानीय चर में डेटाबेस कनेक्शन प्रबंधित करता है। तो ओआरएम तक पहुंचने वाला प्रत्येक अलग धागा अपना खुद का कनेक्शन बनाएगा। आप देख सकते हैं कि django/db/backends/__init__.py
की पहली कुछ पंक्तियों में ।
यदि आप किए गए डेटाबेस कनेक्शन की संख्या को सीमित करना चाहते हैं, तो आपको वास्तव में ORM तक पहुँचने वाले विभिन्न थ्रेड्स की संख्या को सीमित करना होगा। एक समाधान एक ऐसी सेवा को लागू करना हो सकता है जो ओआरएम अनुरोधों को समर्पित ओआरएम धागे के पूल में सौंपती है। अनुरोधों और उनके परिणामों को अन्य थ्रेड्स से प्रेषित करने के लिए आपको किसी प्रकार के संदेश पासिंग तंत्र को लागू करना होगा। चूंकि यह एक सामान्य निर्माता/उपभोक्ता समस्या है, थ्रेडिंग के बारे में पायथन दस्तावेज़ों को कुछ संकेत देना चाहिए कि इसे कैसे प्राप्त किया जाए।
संपादित करें: मैंने अभी "django कनेक्शन पूलिंग" के लिए गुगल किया है। ऐसे कई लोग हैं जो शिकायत करते हैं कि Django उचित कनेक्शन पूल प्रदान नहीं करता है। उनमें से कुछ एक अलग पूलिंग पैकेज को एकीकृत करने में कामयाब रहे। PostgreSQL के लिए, मैं pgpool मिडलवेयर पर एक नज़र डालूंगा।