collection.insert ({"key1": val1, "key2": "val2"}, функция (err, info) {
if (err) {// обработать это} else {if (info) {
Вы вызываете функцию fireandforget (info), здесь можно писать в журналы или отправлять в SQS или выполнять какие-то другие дочерние спавны или в процессе. Это может быть даже обратный вызов, но я думаю, что запуск и забывание могут сделатьв большинстве случаев. Я говорю «уволить и забыть», потому что полагаю, что вам не нужно задерживать ответ, чтобы вы могли вернуть клиенту все, что вам нужно. И частично ответив на другой вопрос, вы можете вернуть JSON следующим образом
db.close();
var myJSON =[];
sys.puts("Cool info stored and did a non blocking fire and forget for some other mongo monitoring stuff/process and sending control back to the browser");
sys.puts(sys.inspect(info));//remove later
myJSON.push({"status":"success"});
myJSON.push({"key1":val1,"key2":val2});//or whatev you want to send
res.writeHead(200, { "Content-Type" : "text/plain" });
res.write(JSON.stringify(myJSON));
res.end();
}
}