저는 node.js를 처음 사용하고 restify, mongoose 및 mongodb를 사용하여 서비스를 구축하고 있습니다. 내가 만들고있는 서비스 중 하나는 전자 메일을 보내야하며 전자 메일의 보내기 상태를 서비스 소비자가 알 필요가 없습니다. 아래 코드를 테스트로 사용하여 코드를 만들었습니다. 원하는 방식으로 작동하고 있지만 보이지 않는 잠재적 인 문제가 없는지 확인하고자합니다. 내 관심사는이 서비스가 짧은 기간 내에 1,000 회 호출되고 전자 메일이 다소 느리게 전송되면 (1-3 초마다) 노드 서버의 성능이 저하 될 수 있다는 것입니다. 이 항목들이 내부적으로 대기열에 들어가는 방법과 머무를 수있는 한계가 있는지는 잘 모르겠습니다. 난 process.nextTick 본질적으로 실행 항목을하지만 당신이 노드의 이벤트 루프를 압도하기 전에 항목의 수에 제한이 무엇입니까? 여기 내 테스트 코드입니다 :node.js 전자 메일 비동기 전송
var sendUsingTemplate = function(template, mergeData) {
console.log('emailManager.sendUsingTemplate starting...');
console.log('template: ' + template);
console.log('mergeData: ' + mergeData);
process.nextTick(function(){
console.log('setting up async code in here...');
setTimeout(function() {
console.log('ok done with async!');
}, 10000);
});
};