2016-04-11 24 views
0

Herkese Açık Benim Sistemim kuyrukta olduğu gibi birden fazla istek alıyor, ancak ilk istekte bulunulduğunda, başka bir kişi kapandığı zamana kadar beklemek zorunda kalıyor. FCFS (First come First Serve) algoritması gibi.NodeJs sunucu tarafında işlem yapılıyor

Şimdi böyle bir şey istiyorum Istediğim sıraya göre 5 istekte Sonraki istek server is too much busy right now Please try after some time hata verdi.

Lütfen bu veya başka bir IDEA'dan daha iyi bir şekilde işlem yapabilecek başka bir Teknik bildirin. Lütfen düşüncelerinizi paylaşın.

Teşekkür

+0

Sanırım node js sunucusu, olay döngüsünü kullandığı için istekleri otomatik olarak işliyor. –

cevap

1

Bir seferde sadece bir istek hizmet etmek onun iyi bir fikir olduğunu sanmıyorum. Sunucular çoklu istekleri ele almak içindir. Ancak, istekleri 5 ile sınırlamak isterseniz, aynı şeyi elde etmek için kullanım kapatma değişkenini kullanabilirsiniz. Örneğin. Bu ekspres yönlendirici:

var noOfActiveReq = 0; 

router.get('/handle', function (req, res) { 
    if(noOfActiveReq > 5) { 
    return next(new Error("server is too much busy right now Please try after some time")); 
    } 
    noOfActiveReq++; 
    db.get(req.query.id, function(err, result){ 
    noOfActiveReq--; 
    if(err) return next(err); 
    res.json(result); 
    }); 
});