Dampak dari restart anggun Apache dan pengalaman pengguna


10

Apakah aman untuk melakukan gracefulrestart Apache pada server produksi? Efek apa yang akan ditimbulkan oleh restart dengan anggun dan apa dampaknya (jika ada)? Apakah akan ada dampak yang merugikan (mis. Downtime, meskipun hanya untuk waktu yang singkat)?

Saya telah mempertimbangkan sumber daya berikut, tetapi masih belum jelas apa dampaknya terhadap pengguna:

Jawaban:


9

Ketika melakukan restart dengan anggun, koneksi yang ada harus berjalan ke penyelesaian normal di mana titik pekerja mereka akan berakhir. Pekerja baru harus sudah mulai menangani koneksi baru.

Anda seharusnya tidak melihat kegagalan koneksi atau memperlambat pemuatan halaman tetapi dalam praktiknya Anda mungkin melihat koneksi baru antrian sebentar saat konfigurasi dimuat ulang oleh utas utama (milik saya membutuhkan waktu di bawah setengah detik)

Jika Anda memulai kembali untuk mengambil konfigurasi baru maka ada risiko mungkin ada kesalahan konfigurasi yang dapat mencegah server memulai kembali dengan benar.

Jika server dalam keadaan tidak normal, server mungkin gagal untuk memulai ulang dengan anggun (mungkin itulah sebabnya Anda mempertimbangkan untuk memulai kembali dengan anggun)


1

Jika Apache menyajikan file statis, dan tidak bertindak sebagai bagian depan untuk sesuatu seperti , itu cukup mulus. Sebagian besar pengguna bahkan tidak akan menyadarinya, dan mereka yang melakukannya akan menganggapnya sebagai gangguan biasa. Apache tidak akan melayani permintaan baru sampai yang lama dilayani, jadi Anda akan menunggu sampai semuanya selesai. Jika seseorang mengunduh file 500MB di 68KB / s, Anda mungkin menunggu WAKTU PANJANG, di mana tidak ada penayangan lain yang terjadi.

Jika Apache mem-fronting server aplikasi, situasinya bisa sangat berbeda. Dari pengalaman, UX untuk berinteraksi dengan server itu akan sangat buruk sampai server aplikasi habis, dimuat, dan cache-cache dihangatkan.


5
Juga, sangat SANGAT penting untuk melakukan /etc/init.d/httpd configtestsebelum melanjutkan dengan segala jenis apache restart pada server produksi.
Sree

Memang - sangat penting untuk menjalankan configtest. IIRC, saya pikir dengan versi Apache yang lebih baru mungkin melakukan configtest implisit sebelum restart anggun, dan jika gagal configtest, itu tidak akan melanjutkan restart.
stellarchariot

5
"Apache tidak akan melayani permintaan baru sampai yang lama dilayani, jadi Anda akan menunggu sampai semuanya selesai. Jika seseorang mengunduh file 500MB di 68KB / s Anda mungkin menunggu WAKTU PANJANG, di mana tidak ada yang lain melayani sedang terjadi. " Ini tidak akurat. Konfigurasi dimuat ulang segera dan proses anak baru dibuat, menerima koneksi, dan memproses permintaan sementara generasi sebelumnya sedang menyelesaikan permintaan terakhir mereka.
covener

0

Parameter anggun yang disebutkan di atas memberi tahu httpd untuk memulai proses memulai kembali dengan terlebih dahulu memberi tanda pada semua proses anaknya untuk menyelesaikan tugas mereka saat ini. Setelah semua proses anak (yang melayani permintaan http) telah menyelesaikan tugas mereka, mereka akan ditutup; jika ada proses anak yang saat ini tidak melayani permintaan, mereka akan segera ditutup.

Sedangkan, hentikan upaya untuk menghentikan semua proses anak dengan segera, yang dapat membuat pengguna akhir menggantung. Preferensi saya anggun - pilihan yang lebih baik untuk server kelas bisnis Anda - karena lebih ramah daripada menghentikan proses anak secara tiba-tiba yang melayani pelanggan. Banyak admin dan terutama programmer menggunakan stop untuk menghentikan server mereka, seringkali karena mereka tidak tahu bahwa ada anggun.

Tautan: https://www.godaddy.com/garage/tech/config/how-to-restart-apache-without-rebooting-your-centos-linux-server/ Tautan

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.