मैं Heroku पर एक नोड.जेएस एप्लिकेशन लिख रहा हूं और पीजी मॉड्यूल का उपयोग कर रहा हूं । मैं डेटाबेस को क्वेरी करने के लिए आवश्यक प्रत्येक अनुरोध के लिए क्लाइंट ऑब्जेक्ट प्राप्त करने के लिए "सही" तरीके का पता नहीं लगा सकता।
प्रलेखन इस तरह कोड का उपयोग करता है:
pg.connect(conString, function(err, client) {
// Use the client to do things here
});
लेकिन निश्चित रूप से आपको pg.connect
हर फ़ंक्शन के अंदर कॉल करने की आवश्यकता नहीं है जो डेटाबेस का सही उपयोग करता है? मैंने ऐसा करने वाला अन्य कोड देखा है:
var conString = process.env.DATABASE_URL || "tcp://postgres:1234@localhost/postgres";
var client = new pg.Client(conString);
client.connect();
// client is a global so you can use it anywhere now
मैं दूसरे विकल्प की ओर झुक रहा हूं क्योंकि मेरा मानना है कि हरोकू के लिए मुफ्त डेटाबेस उदाहरण वैसे भी एक कनेक्शन तक सीमित है, लेकिन क्या इस तरह से करने में कोई कमियां हैं? क्या मुझे यह जांचने की आवश्यकता है कि क्या उपयोग करने से पहले मेरा क्लाइंट ऑब्जेक्ट अभी भी हर बार जुड़ा हुआ है?