मैं एक php डेवलपर की तरह कुछ भी नहीं हूं लेकिन मुझे इसका उपयोग करना होगा और मुझे वास्तव में पता नहीं है कि सत्र के दौरान PHP कैसे स्मृति आवंटन को संभालता है।मुझे PHP में डेटाबेस कनेक्शन कब बंद करना चाहिए?
मैं एक ऐसे अनुप्रयोग पर काम कर रहा हूं जो HTTP प्रमाणीकरण मांगता है, एक बार जब आप लॉग इन हो जाते हैं तो आप एक अच्छे इंटरफ़ेस के माध्यम से डेटा का उपयोग कर सकते हैं।
किसी ने मुझे एक और पोस्ट पर बताया, कि मुझे प्रत्येक निष्पादन के बाद MySQL डेटा कनेक्शन बंद नहीं करना चाहिए, लेकिन मुझे नहीं पता कि इस कनेक्शन का उपयोग करते समय यह कनेक्शन कैसे स्मृति है क्योंकि सर्वर पक्ष में मुझे नहीं पता कि PHP स्मृति में रहता है या नहीं।
तो मेरा सवाल है कि मैं डीबी से कनेक्ट करने के लिए एक सिंगलटन का उपयोग करूँगा और इसे कभी बंद नहीं करूँगा (क्योंकि मुझे कभी पता नहीं चलेगा कि एप्लिकेशन कब उपयोग में नहीं है। या मुझे आज जो करना है उसके साथ खड़ा होना चाहिए: कनेक्शन खोलना - > बयान पर अमल -> घनिष्ठ संबंध
पुनश्च:। मैं उपयोग कर रहा हूँ mysqli
संपादित करें 1:
मेरा आवेदन है MVC पैटर्न अर्थ के साथ डिजाइन:
|''''''''''| |'''''''''''''| |''''''''''''''|
| view.php | ==> | control.php | ==> | database.php |
|----------| |_____________| |______________|
यह पैटर्न दृश्य को केवल control.php
के माध्यम से डेटा के साथ संवाद करने की अनुमति देता है, जो डेटाबेस.php से SELECT
या EDIT
डेटा से फ़ंक्शन को कॉल करता है। विवरण आप मुझे दे के साथ, मैं रखना चाहिए:
public function __destruct(){
mysql_close($this->connection);
}
database.php
अंदर है, लेकिन उस पृष्ठ लोड है जब चयन करें या डेटा को संशोधित करने की जरूरत है, तो यह केवल थोड़े समय के लिए मार डाला है, जिसका अर्थ है कि यह अभी भी बंद हो जाएगा अनुरोध के अंत में कनेक्शन।
जो आपके द्वारा प्रदान किए गए कोड की शांति कहां रखेगा, या PHP में प्रासंगिक मेरा पैटर्न कहां से अधिक सटीक प्रश्न देता है?
जो आपके क्लास के डेटाबेस प्रबंधन को निष्पादित करने वाला विनाशक है, देखें: http://stackoverflow.com/questions/2129162/how-do-you- कुशलतापूर्वक- कनेक्ट-to-mysql -इन-पीएचपी-बिना-रीकनेक्टिंग-ऑन-हर-क्यू –
ऐसा इसलिए है क्योंकि एक एमवीसी पैटर्न नियंत्रण नियंत्रण दृश्य और मॉडल (डेटाबेस) में है। आपकी योजना में नियंत्रण नियंत्रण नियंत्रण और मॉडल।यदि आप अपने एमवीसी को सही तरीके से कोड करते हैं तो समस्या स्वचालित रूप से –
हल हो जाएगी और यहां समस्या है, मैं ऑब्जेक्ट के साथ कोड नहीं करता क्योंकि मुझे वास्तव में यह नहीं पता कि यह कैसे करना है और मेरे पास ऐप को बदलने का समय नहीं है और न ही सीखने का समय यह कैसे काम करता है। – Kiwy