這是一個簡單但非常經典的node.js處理數據庫高並發的實現代碼:
1 var proxy = new EventProxy(); 2 var status = "ready"; 3 var select = function(callback){ 4 proxy.once("selected",callback); 5 if(status == "ready"){ 6 status = "pending"; 7 db.select("SQL", function(results){ 8 proxy.emit("selected",results); 9 status = "ready"; 10 }); 11 }
這段代碼實現了在一條SQL執行的時候如果來了5000等等的請求,那么一次查詢結果將返回5000條等等對應的請求,node.js 高並發可見一斑,名不虛傳。
留此筆記以防后用。
