http.createServer(function(request, response) {
console.log("New request :"+request.url);
var found = false;
for(var i= 0; i < requests.length; i++){
match = requests[i];
if(match.method == request.method && request.url.match(match.regexp))
{
console.log("Matched request: "+match.url);
pg.connect(databaseUrl, function(error, client) {
if(error)
processError(response, error);
else
match.action(client, request, response);
});
found = true;
break;
}
}
if(!found)
processError(response, "Request url does not exist: "+request.url);
}).listen(3000);
sys.puts("Server running... waiting for requests");
Bonjour à tous. Je suis coincé avec ce code. Chaque fois que j'appelle 11 fois la même requête, nodejs cesse de répondre et ne consigne même pas "New request:" + request.url. Quelqu'un a une idée de ce qui se passe?NodeJS cesse de répondre après 11 demandes
Merci beaucoup.
Je ne vois rien dans cette partie du code mais c'est vraiment inefficace. Vous devriez utiliser un hachage plutôt que d'itérer un tableau pour décider si une action correspond - son O (1) au lieu de O (n)! – Stephen
Merci pour votre réponse rapide. En effet, cela pourrait être beaucoup plus efficace. Mais ce n'est pas une priorité pour le moment. J'ai juste besoin d'un serveur "stable" et ne comprends vraiment pas ce comportement (pas d'erreur du serveur). – Elendir
Il n'y a rien de mal avec ce code que je peux voir - je chercherais des problèmes dans votre manipulation de DB ou la manipulation de match ... – Stephen