Interviewfragen zu Node.js (Middle) mit Antworten
75 Fragen fürs Vorstellungsgespräch zu Node.js (Middle) mit richtigen Antworten, Erklärungen und Links zur Dokumentation.
Diesen Test machen- 1.Welche Liste zeigt die Hauptphasen der Event Loop von Node.js in der richtigen Reihenfolge?
- 2.In welcher Reihenfolge erscheint die Ausgabe?
- 3.Was läuft innerhalb eines I/O-Callbacks (zum Beispiel in
fs.readFile) zuerst? - 4.Warum können rekursive Aufrufe von
process.nextTickgefährlich sein? - 5.Was bearbeitet der Thread-Pool von libuv standardmäßig?
- 6.Ein Request-Handler führt 2 Sekunden lang eine CPU-lastige Schleife aus. Was passiert mit anderen Anfragen?
- 7.Was davon kann die Event Loop blockieren?
- 8.Wie misst man, wie ausgelastet die Event Loop ist?
- 9.Was macht
timer.unref()? - 10.Was macht
await setTimeout(1000), importiert ausnode:timers/promises? - 11.Warum nutzt man Streams statt
readFile, um eine 2-GB-Datei zu senden? - 12.Welche vier Grundtypen von Streams gibt es in Node.js?
- 13.Was ist Backpressure bei Streams?
- 14.Warum bevorzugt man
stream.pipeline()gegenüber verketteten.pipe()-Aufrufen? - 15.Wie liest man einen Readable Stream zeilen- oder stückweise mit
async/await? - 16.Was ist ein
Buffer? - 17.Was ist der Unterschied zwischen
Buffer.alloc(10)undBuffer.allocUnsafe(10)? - 18.Was liefert
Buffer.from("привіт").length? - 19.Was ist
objectModebei Streams? - 20.Wie komprimiert man eine Datei mit Streams per gzip?
- 21.Was passiert, wenn ein
EventEmittererrorauslöst und es keinen Listener fürerrorgibt? - 22.Worauf deutet die Warnung
MaxListenersExceededWarningmeist hin? - 23.Wie wartet man auf ein einzelnes Event als Promise?
- 24.Was ist der Unterschied zwischen operativen Fehlern und Programmierfehlern?
- 25.Warum ist es nützlich, beim erneuten Werfen eines Fehlers
causezu übergeben? - 26.Wofür nutzt man
AbortControllerin Node.js? - 27.Warum sollte jeder ausgehende HTTP-Aufruf ein Timeout haben?
- 28.Wie definiert man in Express eine Middleware zur Fehlerbehandlung?
- 29.Was hat sich in Express 5 für
async-Route-Handler geändert? - 30.Spielt die Reihenfolge der
app.use()-Aufrufe in Express eine Rolle? - 31.Wofür nutzt man
express.Router()? - 32.Was ist ein Hauptmerkmal von Fastify gegenüber Express?
- 33.Warum validiert man Eingaben auf dem Server, auch wenn das Frontend sie schon prüft?
- 34.Welche HTTP-Methoden sind per Definition idempotent?
- 35.Wie liefert man API-Fehler in einem einheitlichen Format?
- 36.Wie liefert man in Express einen Ordner mit statischen Dateien aus?
- 37.Wie sollten Passwörter gespeichert werden?
- 38.Was garantiert eine JWT-Signatur?
- 39.Was ist ein häufiger Nachteil von JWTs gegenüber serverseitigen Sitzungen?
- 40.Welche Cookie-Attribute helfen, ein Sitzungs-Cookie zu schützen?
- 41.Warum müssen SQL-Abfragen Parameter statt String-Verkettung nutzen?
- 42.Was macht die Middleware
helmet? - 43.Warum ergänzt man einen Login-Endpunkt um Rate Limiting?
- 44.Wie erzeugt man ein kryptografisch sicheres zufälliges Token?
- 45.Wie sollte man ein geheimes Token aus einer Anfrage mit dem gespeicherten vergleichen?
- 46.Warum nutzen Node.js-Apps einen Verbindungspool zur Datenbank?
- 47.Was ist das N+1-Abfrageproblem?
- 48.Wann braucht man eine Datenbanktransaktion?
- 49.Was ist ein ORM wie Prisma oder TypeORM?
- 50.Welche Funktion von Node.js erlaubt, SQLite ohne Installation eines Pakets zu nutzen?
- 51.Wofür sind Worker Threads da?
- 52.Was ist der Unterschied zwischen
child_process.execundchild_process.spawn? - 53.Was macht
child_process.fork()? - 54.Was macht das Modul
cluster? - 55.Wie mockt man mit dem eingebauten Test-Runner eine Funktion?
- 56.Wie testet man die Endpunkte einer Express-App, ohne einen echten Server auf festem Port zu starten?
- 57.Welche Funktion aus
node:assertvergleicht Objekte nach ihrem Inhalt? - 58.Was empfiehlt die Twelve-Factor App für Konfiguration?
- 59.Was sollte ein Node.js-Server tun, wenn er
SIGTERMbekommt? - 60.Warum sollten Logs eine Request-ID enthalten?
- 61.Welche Daten dürfen nie in Logs geschrieben werden?
- 62.Warum kopiert man in einem Dockerfile für eine Node.js-App
package.jsonund die Lockfile vor dem Quellcode? - 63.Wofür nutzt man einen Health-Check-Endpunkt wie
/health? - 64.Was macht das Feld
exportsinpackage.json? - 65.Kann CommonJS-Code in modernem Node.js ein ES-Modul per
require()laden? - 66.Was drückt das Feld
enginesinpackage.jsonaus? - 67.Was sind npm Workspaces?
- 68.Was ist ein Risiko von
postinstall-Skripten in Abhängigkeiten? - 69.Wann sind Server-Sent Events (SSE) eine bessere Wahl als WebSockets?
- 70.Was ist eine Herausforderung von WebSockets bei mehreren Server-Instanzen?
- 71.Warum nutzt man eine Job-Queue wie BullMQ zum Senden von E-Mails nach der Registrierung?
- 72.Wofür nutzt man
AsyncLocalStorage? - 73.Warum ist HTTP Keep-Alive für einen Dienst wichtig, der oft andere APIs aufruft?
- 74.Warum ist Cursor-basierte Paginierung bei großen Tabellen oft besser als
OFFSET? - 75.Was ist das Cache-Aside-Muster mit Redis?