Auto Restart Apache khi high-load

Khi bạn chạy WebServer, nếu site có lượng truy cập cao khiến cho VPS bị high load kéo dài thì có thể dẫn đến hiện tượng nghẽn cổ chai khiến VPS bị ngừng hoạt động.

Để khắc phục hiện tượng này bạn có thể cài đặt 1 script chạy 5 phút/lần để kiểm tra xem VPS có bị load cao hay không, nếu có sẽ tự động restart lại Apache.

Bước 1: Tạo file check

cd /usr/local/
mkdir auto
cd auto
nano -w restart.sh

Dán script sau:

#!/bin/sh
check=`cat /proc/loadavg | sed 's/\./ /' | awk '{print $1}'`

if [ $check -gt 5 ]
//điền 5 cho VPS 512MB Ram, 10 cho 1GB Ram, 20 cho 2GB Ram
then
        /etc/init.d/httpd restart
fi

Lưu lại file, và chmod script về 755

chmod 755 restart.sh

Bước 2: Tạo file cron

cd ~
cd /etc/cron.d
nano -w auto_restart

Dán script sau:

*/5 * * * * root /usr/local/auto/restart.sh >/dev/null 2>&1

Lưu lại file cron để hoàn tất.

Bài viết này có ích cho bạn không? 0 phiếu cảm nhận dễ hiểu & thực hiện (0 Phiếu)