Điểm:0

Chạy tập lệnh PHP liên tục ở chế độ nền

lá cờ gb

Tôi đã tạo một tệp PHP chứa một vòng lặp vô hạn thực hiện một số kiểm tra nhất định và hành động nếu các biến thay đổi (những gì bên trong tập lệnh có lẽ không quan trọng lắm đối với câu hỏi của tôi). Tôi muốn dịch vụ luôn chạy, cho đến khi tôi bảo nó dừng lại. Sau khi tìm kiếm, tôi quyết định sử dụng nohup cho nhiệm vụ này. Tuy nhiên, nhược điểm của Nohup là tôi không thể thực sự theo dõi nếu dịch vụ ngừng hoạt động (ngoài việc chạy thủ công ps-aux và tìm kiếm quá trình).

Tôi cũng đã đọc những điều về giám sát, nghe cũng khá hay, nhưng tôi hơi lạc lõng và không thực sự biết giải pháp tốt nhất là gì. Tôi muốn tập lệnh PHP tự động bắt đầu khi khởi động lại và tôi muốn dịch vụ kiểm tra xem tập lệnh có còn chạy hay không, nếu không, tôi muốn tập lệnh khởi động lại/cảnh báo để tôi có thể kiểm tra xem có chuyện gì.

Tôi có nên sử dụng một trong hai nohup hoặc giám sát? Hay các bạn đề xuất một cái gì đó hoàn toàn khác? Sẽ thật tuyệt nếu tôi có thể chạy dịch vụ bên trong bộ chứa docker nơi tôi có thể chỉ cần thêm việc thực thi dịch vụ bên trong Dockerfile.

lá cờ in
Có gì sai khi tạo một đơn vị systemd?
lá cờ in
bộ chứa Docker sẽ làm những gì bạn muốn, bạn đã trả lời câu hỏi của riêng mình.
Jordy avatar
lá cờ gb
@GeraldSchneider làm thế nào để một bộ chứa docker đã làm điều đó? Bộ chứa docker có tạo dịch vụ của lệnh php mà nó thực thi không? Và tôi sẽ xem xét systemd, nó có khác gì với supervisord không?
Điểm:0
lá cờ in

Có vẻ như tốt hơn hết là bạn chỉ nên sử dụng good'ol CRON.

Bạn có thể định cấu hình bất kỳ tập lệnh nào để chạy ở bất kỳ khoảng thời gian nào mặc dù tôi không khuyên bạn nên chạy tập lệnh đó liên tục, có thể để tập lệnh chạy cứ sau 5 phút. Vì vậy, một cái gì đó như thế này:

*/5 * * * * php /path/to/php/file >/dev/null 2>&1

Vì vậy, bạn có thể tìm hiểu thêm về CRON: https://linuxman.co/linux-server/cron-a-nosedive-into-lazy-sysadmin/

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.