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