„Wywołaj podobne do wątku zachowanie w node.js

Chcę dodać kilka narzędzi administracyjnych do małej aplikacji internetowej, takiej jak „Backup Database”. Użytkownik kliknie przycisk, a odpowiedź HTTP powróci natychmiast, chociaż potencjalnie długotrwały proces został uruchomiony w tle.

W Javie prawdopodobnie zostanie to zaimplementowane przez zrobienie niezależnego wątku w Scali przy użyciu Actora. Ale jaki jest odpowiedni idiom w node.js? (doceniony fragment kodu)

Teraz ponownie czytam dokumenty, to naprawdę wydaje się być pytaniem o węzeł 101, ale to jest prawie to, co mam na myśli ... w każdym razie, aby wyjaśnić, jest to podstawowy scenariusz:

<code>function onRequest(request, response) {
    doSomething();
    response.writeHead(202, headers);
    response.end("doing something");
}

function doSomething(){
     // long-running operation
}
</code>

Chcę, aby odpowiedź natychmiast powróciła, pozostawiając doSomething () uruchomiony w tle.

Ok, biorąc pod uwagę jednowątkowy model węzła, który nie wydaje się możliwy bez tworzenia kolejnego ChildProcess na poziomie systemu operacyjnego. Moje nieporozumienie.

W moim kodzie to, czego potrzebuję do tworzenia kopii zapasowych, jest głównie oparte na I / O, więc węzeł powinien sobie z tym poradzić w miły, asynchroniczny sposób. Myślę, że zrobię to, aby przesunąć coś do siebie po odpowiedzi. Zobacz, jak to się zachowuje.

questionAnswers(2)

yourAnswerToTheQuestion