2016-04-12 17 views
2

nodejs uygulamasında yeni ve kullanıcı listesini ekleyebileceğim, bu kullanıcıları ekleyip kaldırabileceğim bir uygulama oluşturarak öğrenmeye çalışıyorum. Ben nodejs ve daha sonra mongodb için istek göndermek için frontend içinde angularjs kullanıyorum. Sorun şu ki, "adduser" düğmesine bir çok kez tıklarsam, uygulamanız yavaşlar.Neden benim nodejs istekleri yavaş?

app.get('/users',function (req, res) { 
     mongoose.model('Usuario').find(function (err, list) { 
      res.send(list); 
     }); 
}); 
app.post('/addusuario', function (req,res) { 
    var usuario = new Usuario(req.body); 
    usuario.save(function (err) { 
     if (err) { 
     console.log(err); 
     } else { 
     console.log('Usuario salvo com sucesso'); 
     } 
}); }); 
app.delete('/delusuario/:id', function (req, res) { 
    var id = req.params.id; 
    mongoose.model('Usuario').findByIdAndRemove(id , function(err) { 
     if(err) { 
      console.log(err); 
     } else { 
      console.log('Usuario removido com sucesso!'); 
     } 
    }); 
    }); 

Im benim angularapp:

app.controller('AppCtrl', function($scope, $http, Data) { 

    function reload() { 
     Data.get('users').then(function(data){ 
      $scope.usuarios = data; 
      console.log(data); 
     }); 
    }; 


    $scope.addUsuario = function(usuario) { 
     Data.post('/addusuario', usuario); 
     reload(); 
    }; 

$scope.deletarUsuario = function(id) { 
     Data.delete("/delusuario/"+id).then(function(result) { 

     }); 
      reload(); 
    }; 

    reload(); 
}); 

Ben kullanıcıya 3 defadan fazla eklemek için tıklayın sonra yavaş ön plana çıkmıştır neden bilmiyorum ..

+0

Veri hizmeti/fabrika eksik ... artış .. firewall ve antivirüs kontrol u ne demek istiyorsunuz – Max

+0

tarayıcı sunucudan doğrudan uygulamasını deneyin eğer tarayıcı belleği kontrol et "tarayıcı sunucudan doğrudan uygulamayı deneyin"? – Tiago

+0

Farklı bir makinede çalışan düğüm uygulamasına sahipseniz, bu makineden uygulamaya gitmeyi deneyin – Max

cevap

3

kullandığım mongodb için etkileşim için Kodunuzda gördüğünüz, kullanıcıya geri cevap göndermediğini, veritabanına ekledikten veya sildikten sonra bir şeyler yapmalısınız. Sen istemciye yanıt döndürerek değil yığını engellemek

app.get('/users',function (req, res) { 
     mongoose.model('Usuario').find(function (err, list) { 
      res.send(list); 
     }); 
}); 

app.post('/addusuario', function (req,res) { 
    var usuario = new Usuario(req.body); 
    usuario.save(function (err) { 
     if (err) { 
     console.log(err); 
     res.json({err: err}); 
     } else { 
     res.json({ok: true}); 
     console.log('Usuario salvo com sucesso'); 
     } 
}); }); 

app.delete('/delusuario/:id', function (req, res) { 
    var id = req.params.id; 
    mongoose.model('Usuario').findByIdAndRemove(id , function(err) { 
     if(err) { 
      console.log(err); 
      res.json({err: err}); 

     } else { 
      res.json({ok: true}); 
      console.log('Usuario removido com sucesso!'); 
     } 
    }); 
    }); 

: res.end();

aşağıdaki şekilde kodunuzu yeniden gerekir. Ve bu büyük olasılıkla yavaş isteğinizin sebebidir.

+1

Teşekkür ederiz! Şimdi iyi çalışıyor: D Bunu bilmiyordum – Tiago

İlgili konular