Sobes.tech
Middle
58

Έχουμε μια εφαρμογή FastAPI με ένα συμβάν τερματισμού (shutdown) που εκτελεί κάποια λογική. Αν σκοτώσουμε την εφαρμογή με το σήμα -9 (kill -9), θα εκτελεστεί ο τερματισμός;

Εταιρείες όπου ρωτήθηκαν
СБЕРСБЕР

Απάντηση από AI

sobes.tech AI

Если приложение FastAPI убивается с помощью сигнала kill -9 (SIGKILL), то обработчик события shutdown не выполнится.

Причина в том, что SIGKILL — это сигнал немедленного завершения процесса, который нельзя перехватить или обработать. В отличие от SIGTERM (обычный сигнал завершения), который можно перехватить и выполнить очистку, SIGKILL прерывает процесс мгновенно.

Поэтому логика в app event shutdown не сработает при kill -9. Чтобы корректно завершить приложение и выполнить shutdown-логику, нужно использовать сигналы, которые можно обработать, например, kill -15 (SIGTERM).