"Spawn a thread" -ähnliches Verhalten in node.js

Ich möchte einer kleinen Web-App einige Verwaltungsdienstprogramme hinzufügen, z. B. "Datenbank sichern". Der Benutzer klickt auf eine Schaltfläche und die HTTP-Antwort wird sofort zurückgegeben, obwohl der möglicherweise lang andauernde Prozess im Hintergrund gestartet wurde.

In Java würde dies wahrscheinlich implementiert, indem ein unabhängiger Thread erstellt wird, in Scala mithilfe eines Actors. Aber was ist ein passendes Idiom in node.js? (Code Snippet geschätzt)

Ich lese jetzt die Dokumente noch einmal durch, dies scheint wirklich eine Frage des Knotens 101 zu sein, aber hier bin ich ziemlich genau ... jedenfalls, um dies zu verdeutlichen, ist dies das grundlegende Szenario:

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

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

Ich möchte, dass die Antwort sofort zurückkommt und doSomething () im Hintergrund ausgeführt wird.

In Anbetracht des Single-Thread-Modells des Knotens, das nicht möglich zu sein scheint, ohne einen weiteren ChildProcess auf Betriebssystemebene zu erzeugen. Mein Missverständnis.

In meinem Code basiert das meiste, was ich für die Sicherung benötige, auf E / A. Daher sollte der Knoten dies auf eine nette asynchrone Art und Weise handhaben. Ich denke, ich werde das doSomething nach der Antwort verschieben. Ende, sehen Sie, wie sich das verhält.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage