0
1.synchronousnodejs:數據庫連接成本是否重要?
mongo.conn(function(err,db){
db.collection('pet').find({},function(err, result){
db.collection('petviewcount').updateOne({}, {$inc:{viewcount:+1}}, function(err, result){
// db.collection('more').find({},function(err, result){
// db.collection('insert').find({},function(err, result){
// db.collection('update').find({},function(err, result){
db.close();
cb(err, result);
});
});
});
2.asynchronous
mongo.conn(function(err,db){
db.collection('pet').find({},function(err, result){
db.close();
cb(err, result);
});
});
countUp();
// more + insert + update()
function countUp(){
mongo.conn(function(err,db){
db.collection('petviewcount').updateOne({}, {$inc:{viewcount:+1}}, function(err, result){
db.close();
});
});
}
據我知道發送單個請求到服務器(節點)時
第一個是保存服務器和數據庫之間的連接成本。
第二個是比前一個更快的響應。
哪個更適合現實世界?
(1小數據延遲是可以接受的
2.我不知道該如何處理服務器和數據庫性能瓶頸之間。)
你誤會同步和異步過程的概念。你的兩個示例代碼都是異步運行的。出於性能考慮,重新使用連接比每次請求創建新連接要好,因爲連接需要資源和開銷。 – iKoala
如果在上面的例子中沒有回調,它是同步的嗎?或者在使用睡眠函數或節點同步庫時是同步的嗎?我感到困惑。 – user2655470