Signal là thông báo bất đồng bộ gửi tới process để yêu cầu nó phản ứng — cơ chế IPC đơn giản của OS. Gửi bằng kill -SIGNAL <PID>.
Hay gặp:
- SIGTERM (15) — mặc định của kill: yêu cầu kết thúc lịch sự. Process có thể bắt để dọn dẹp (đóng kết nối, flush, lưu state) rồi thoát. Đây là "graceful shutdown".
- SIGKILL (9): buộc chết ngay, không thể bắt hay bỏ qua, không kịp dọn dẹp. Chỉ dùng khi process treo, không phản hồi SIGTERM.
- SIGINT (2): Ctrl+C.
- SIGHUP (1): mất terminal; nhiều daemon dùng để reload config.
- SIGSTOP/SIGCONT: tạm dừng/tiếp tục.
Thực hành đúng: gửi SIGTERM trước, chờ; chỉ SIGKILL khi bắt buộc. Container: docker stop gửi SIGTERM rồi mới SIGKILL sau timeout.