Ruby on Rails

ActiveJob & Background Jobs

ActiveJob, Sidekiq, DelayedJob, Job-Queues, perform_later, Fehlerbehandlung, Retry-Logik, GlobalID

20 Interview-Fragen·
Mid-Level
1

Was ist ActiveJob in Ruby on Rails?

Antwort

ActiveJob ist ein in Rails integriertes Framework, das eine einheitliche Schnittstelle zum Deklarieren von Jobs und deren Ausführung auf verschiedenen Queuing-Backends wie Sidekiq, Resque oder DelayedJob bereitstellt. Es ermöglicht den Wechsel des Backends, ohne den Job-Code zu ändern, und bietet eine standardisierte Abstraktion für die asynchrone Hintergrundverarbeitung.

2

Welche Methode sollte verwendet werden, um einen Job in ActiveJob asynchron auszuführen?

Antwort

Die Methode perform_later reiht den Job zur asynchronen Ausführung durch das konfigurierte Queuing-Backend ein. Der Job wird in eine Queue gestellt und später von einem Worker verarbeitet. Im Gegensatz zu perform_now, das den Job sofort und synchron ausführt, gibt perform_later den Haupt-Thread frei und verbessert die Reaktionsfähigkeit der Anwendung.

3

Was ist der Hauptunterschied zwischen perform_later und perform_now in ActiveJob?

Antwort

perform_later reiht den Job in eine Queue zur späteren asynchronen Ausführung durch einen Worker ein, während perform_now den Job sofort und synchron im aktuellen Prozess ausführt. perform_now ist nützlich für Tests oder wenn eine sofortige Ausführung erforderlich ist, blockiert jedoch den aufrufenden Thread, bis der Job abgeschlossen ist.

4

Wie definiert man die Standard-Queue für einen ActiveJob-Job?

5

Was ist GlobalID und welche Rolle spielt es in ActiveJob?

+17 Interview-Fragen

Meistere Ruby on Rails für dein nächstes Interview

Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.

Kostenlos starten