teknik iş görüşmeler için

Temel sorular için konu ile ilgili cevaplar üretmek maksadıyla bilgilerimi paylaşacağım.

1.Load Average Nedir ?

Sistem üzerinde bu bilgiye ulaşmanın en kısayolu “w” komutunu çalıştırarak ulaşabiliriz.

Bize 3 adet istatistik value verecektir, bunlar sırasıyla son 1, 5, 15 dk içerisinde cpu üzerinde çalışan/istenen veya bekleyen thread’ları(kuyruk) hesaplayarak yapar.

Oluşan bu rakamlar neyi gösterir ?

  1. 1.81, 2.10, 2.21 misal şöyle bir sonuç göstermesi halinde işlem yükünü anlamak için öncellikle sistemin kullandığı cpu hakkında bilgi sahibi olmamız ve kaç core desteklediğini bilmemiz gerekir.
  2. Öğrenmek için top daha sonra 1 yaparak yada lscpu ile görebiliriz. En yalın bilgiye nproc ile ulaşılır.

1 core ortalama 1.00 lavg olarak hesaplayabiliriz daha fazlası için çalışabilir işlemlerin beklemesine neden olacaktır. Aşağıdaki gibi bir işlemciye sahipseniz 2.00 lavg kadar limiti olduğunu düşünebilirsiniz.

CPU(s): 2 > socket ile thread çarpım sonucu
Thread(s) per core: 1 > her core için kaç thread olduğu
Core(s) per socket: 2 > her socket için kaç core olduğu
Socket(s): 1 > fiziksel 1 adet cpu olduğu

Özet geçersek core sayısına bölerek hesaplanır.

Biraz daha derinlere inersek mesela lavg düşük cpu kullanımı yüksek yada bunun tam tersi durumuyla karşılaşırsak ?

Kuyrukta bekleyen ve çalışan thread’ların istatistik bir şekilde bilgi alabilmek için vmstat (virtual memory statistic) komutunu kullanabiliriz.

vmstat 1 10 > 1 saniye aralıklarla toplamda 10 satır bilgi döker.

Default olarak değerleri bize kb cinsinde dökmektedir, -S m argument ile megabyte cinsinden rapor alabiliriz. vmstat -S m 1 10

Burada kontrol edilmesi gereken iki kritik sütun var “r” ve “b”

Başka bir method ise sar komutcuğu ile ilerleyebiliriz. (system activity report)

2.Process yönetimini yapmak için neler kullanabiliriz ?

Biraz derinliği olan bir konu olduğunu söyleyebiliriz. Ancak kısa kısa üzerinden hep birlikte geçelim.

Process status ile yani ps komutcuğu ile çeşitli çıktılar alabiliriz. Daha sonra karşımıza çıkan pid ile üzerinde öldürme, askıya alma, öncelik sırasını değiştirmek yada arka plana atma daha sonra tekrar geri çağırabiliriz. Daha iyi anlayabilmek için bir kaç ipuçları ile birlikte bir senaryo oluşturalım.

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.