Merhaba arkadaÅŸlar,
Makinada birden çok uygulama çalışıyor, ve bazen bazı uygulamalar %100 load oluyor ve bunu eğer fark edip o uygulamayı sonlandırmazsam sunucu aşırı load oluyor ve bi süre sonra ulaşılmaz bir hale geliyor,
Şöyle birşey düşündüm ama nasıl yapacagımı tam olarak kestiremedim,
Mesela basit bir cron(zamanlanmış görev) ile 5 dakikada bir kontrol etse uygulamaları? ve %100 load olan uygulama varsa ona kill atsa, böyle birşey yapılabilir mi?
Cron ile uygulama kontrolü
6
●415
- 04-12-2010, 02:01:41Kimlik doğrulama veya yönetimden onay bekliyor.https://www.r10.net/kabuk-programlama...rdiniz-11.html
şu konuda yapılmıştı böyle birşey yanlış hatırlamıyorsam. - 04-12-2010, 02:30:38SQL PROCESSLIST durumuna bakar hangi veritabanı şişkinlik yapıyor veya sunucuya yük bindiriyorsan belli bir değerin üzerinde çıktığında onun işlemini KILL yaparsınız bu şekilde diğer kullanıcılar bundan etkilenmezler.
php ile yazarak bash script olarak cron tarafından çalıştırılabilir.
Bir ara müşterimin birinin yüzünden kullanmam gerekti.Alıntı - 04-12-2010, 02:47:43Sorun mysql ile ilgili degil, uygulamalar oyun sunucusu hepsi ayrı bir sunucu ve bazen bazı sunucular %100 yük yapıyor ve makinanın kilitlenmesine sebeb oluyor, bunları 5 dakika da bir kontrol ettirmek istiyorum
Bir tane script buldum ama apache ye göre ayarlanmış acaba bunu degiştirebilirmiyiz?
#!/bin/sh max_cpu="10" # Set to max cpu. This is the max % you will allow no decimals. apache_name="httpd" # Set to the name that apache runs as. Usually apache but sometimes it may be httpd. cpu_usage_apache=$(ps xua | grep -iw $apache_name | grep -v grep | awk '{print $3}' | sed -e 's/..$//' | awk '!L[$0]++' | sort -nr) if [ -z "$cpu_usage_apache" ]; then echo "not running" exit 1 fi for i in $cpu_usage_apache; do if [ "$i" -gt "$max_cpu" ]; then ps xua | grep -iw $apache_name | grep -v grep | awk '{print $2}' | xargs kill exit 0 else echo >/dev/null fi done exit 0 - 04-12-2010, 03:27:41bu kod genel olarak kullanılan cpuyu gösteriyor,zbahadir adlı üyeden alıntı: mesajı görüntüle
benim asıl amacım şöyle
srcds_linux adı altında çalışan 10 tane uygulama var mesela, kimisi 10 cpu kullanıyor kimisi 50 kimisi 70.. bazen bi tanesi 100 cpu kullanıyor (tek çekirdekde) ve 100 cpu kullanımı olduğunda bu uygulama 10-15 dk açık kaldıgında makina aşırı load dan kapanıyor. bunu engellemek için öyle bir kod olmalı ki
srcds_linux diye listeleme yaptıgında tek tek cpu kullanımlarını listeleyecek ve ordaki 100 cpu kullanımı olan işlemi sonlandıracak kill komutuyla
100 50 40 35 15 10 5 ... ... ...