Mengapa htop menunjukkan banyak proses apache2 oleh ps aux tidak?

15

Saya menjalankan server web dengan apache2 dan ubuntu. Menggunakan psSaya hanya dapat melihat beberapa proses apache berjalan:

ps aux | grep apache

Namun jika saya htop, saya dapat melihat banyak proses apache2 berjalan. Sekitar 2 lusin. Kenapa bedanya?

Rory
sumber
apache2 adalah model semi-berulir vs seri apache asli. Top tidak mengerjakan utas, begitu juga ps - tetapi htop melakukannya.
Avery Payne

Jawaban:

18

HTop menunjukkan semua proses dan utasnya sedangkan ps aux hanya menampilkan proses. Tekan F5 di htop untuk membuat tampilan hierarki proses dan utasnya. Itu akan lebih masuk akal.

Luke
sumber
Anda dapat menyembunyikan utas di htop. Tekan F2 untuk membuka pengaturan, pergi ke Opsi Tampilan, dan pilih "Sembunyikan utas kernel" dan "Sembunyikan utas proses userland". Untuk tetap menampilkan utas, tetapi dalam warna yang berbeda, pilih "Tampilkan utas dalam warna yang berbeda".
JW.
12

Jawaban Sweimann benar.

Selain itu Anda dapat ps(1)berperilaku dengan cara yang sama dengan menggunakan Hflag yang akan menampilkan utas seolah-olah mereka proses.

Tampaknya kunci yang sama juga akan mematikan perilaku seperti itu di htop.

Dan Carley
sumber
6

Saya tidak tahu htop, tapi mungkin ini menampilkan utas sebagai proses yang terpisah dan Anda telah mengkonfigurasi apache dengan pekerja multithreaded?

Sven
sumber
3

Di htop, Anda dapat menonaktifkan perilaku ini dengan menekan F2, lalu pergi ke "Opsi tampilan", lalu tandai "Sembunyikan utas pengguna". Secara opsional, Anda mungkin menemukan "Sembunyikan utas kernel" juga bermanfaat.

Juliano
sumber
2

Untuk menyoroti perbedaan antara proses dan utas di htop:

  1. tekan F2
  2. pilih "Opsi tampilan"
  3. aktifkan "Tampilkan utas dalam warna yang berbeda"
ESV
sumber