Dừng Apache duyên dáng


23

Có cách nào để ngăn chặn máy chủ Apache mà không chấm dứt các yêu cầu thực thi, về cơ bản là một cách để nói với nó - không chấp nhận thêm bất kỳ kết nối nào và tắt khi bạn hoàn thành các yêu cầu hiện tại của mình?

Câu trả lời:



12

Sử dụng apachectl -k graceful-stoptừ đây :

Tín hiệu THẮNG hoặc dừng duyên dáng khiến quy trình cha mẹ khuyên con cái thoát ra sau yêu cầu hiện tại của chúng (hoặc thoát ngay lập tức nếu chúng không phục vụ bất cứ điều gì). Phụ huynh sau đó sẽ xóa PidFile của nó và ngừng nghe trên tất cả các cổng. Phụ huynh sẽ tiếp tục chạy và theo dõi trẻ em đang xử lý các yêu cầu. Khi tất cả trẻ em đã hoàn tất và thoát hoặc hết thời gian được chỉ định bởi GracefulShutdownTimeout, phụ huynh cũng sẽ thoát.


1

Hãy nhớ rằng sys-v init được sử dụng để dừng duyên dáng theo mặc định và có lực lượng dừng như một tùy chọn bổ sung. Một tùy chọn đặc biệt của NIT để dừng lại một cách duyên dáng chỉ cần thiết nếu bạn chạy trình quản lý quy trình tùy chỉnh thường giết chết các quy trình.


Câu trả lời này có thể mang lại ấn tượng rằng vì systemdkhông phải là trình quản lý quy trình tùy chỉnh nên nó không giết chết quy trình. Tuy nhiên, theo mặc định systemd cũng thực hiện stopkhông phải là một graceful-stopapache.
B. Miller

4
@ B.Miller nếu systemd của bạn thực hiện dừng thay vì dừng duyên dáng, đó là lỗi dành riêng cho hệ điều hành cần được ghi lại. Arch Linux và CentOS 7 đều thực hiện các điểm dừng duyên dáng.
Harald

Debian cũng dừng lại một cách duyên dáng
John Keates

2
Thú vị @JohnKeates ... có lẽ đây là Ubuntu 18.04 cụ thể. 18.04 sử dụng lệnh dừng/usr/sbin/apachectl stop
B. Miller
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.