मैं यह पता लगाने की कोशिश कर रहा हूं कि MySQL का सबसे प्रभावशाली तरीके से उपयोग करने के लिए मेरे एप्लिकेशन को कैसे तैयार किया जाए। मैं नोड- mysql मॉड्यूल का उपयोग कर रहा हूं। यहां अन्य थ्रेड्स ने कनेक्शन पूलिंग का उपयोग करने का सुझाव दिया है इसलिए मैंने थोड़ा मॉड्यूल mysql.js स्थापित किया है
var mysql = require('mysql');
var pool = mysql.createPool({
host : 'localhost',
user : 'root',
password : 'root',
database : 'guess'
});
exports.pool = pool;
अब जब भी मुझे mysql की क्वेरी करनी है तो मुझे इस मॉड्यूल की आवश्यकता है और फिर डेटाबेस की क्वेरी करें
var mysql = require('../db/mysql').pool;
var test = function(req, res) {
mysql.getConnection(function(err, conn){
conn.query("select * from users", function(err, rows) {
res.json(rows);
})
})
}
क्या यह अच्छा तरीका है? मैं वास्तव में बहुत सरल एक के अलावा mysql कनेक्शन का उपयोग करने के बहुत अधिक उदाहरण नहीं पा सका, जहां सब कुछ मुख्य app.js स्क्रिप्ट में किया जाता है, इसलिए मैं वास्तव में नहीं जानता कि सम्मेलन / सर्वोत्तम प्रथाओं क्या हैं।
क्या मुझे हमेशा प्रत्येक क्वेरी के बाद कनेक्शन.एंड () का उपयोग करना चाहिए? अगर मैं इसके बारे में कहीं भूल जाता हूं तो क्या होगा?
कैसे एक कनेक्शन वापस करने के लिए mysql मॉड्यूल के निर्यात भाग को फिर से लिखना है ताकि मुझे हर बार getConnection () लिखना न पड़े?
connection.query
मेरे कोड में सभी जगह हैं" - यह शायद रिफ्लेक्टर का समय है। एक डेटाबेस अमूर्त वर्ग है कि प्रस्तावों का निर्माणselect
,insert
,update
, आदि - और केवल का उपयोगconnection
(याpool
) है कि एकल डाटाबेस वर्ग के भीतर ...