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");
Xin chào mọi người. Tôi bị kẹt với mã này. Bất cứ khi nào tôi gọi 11 lần cùng một yêu cầu, nodejs dừng đáp ứng và thậm chí không ghi lại "New request:" + request.url. Bất cứ ai cũng có ý tưởng về những gì đang xảy ra?NodeJS dừng đáp ứng sau 11 yêu cầu
Thanks a lot.
Tôi không thấy bất kỳ điều gì trong phần này của mã nhưng điều đó thực sự không hiệu quả. Bạn nên sử dụng một băm thay vì lặp lại một mảng để quyết định nếu một hành động phù hợp - O của nó (1) thay vì O (n)! – Stephen
Cảm ơn câu trả lời nhanh của bạn. Quả thực nó có thể hiệu quả hơn nhiều. Nhưng nó không phải là một ưu tiên cho thời điểm này. Tôi chỉ cần một máy chủ "ổn định" và thực sự không hiểu hành vi này (không có lỗi từ máy chủ). – Elendir
Không có gì sai với mã này mà tôi có thể thấy - Tôi sẽ tìm các vấn đề trong xử lý db của bạn hoặc xử lý khớp ... – Stephen