Bila Handler Berjalan & flush_handlers
Kawal masa handler dijalankan pada akhir play.
Bila Handler Berjalan & flush_handlers ialah pelajaran Ansible Academy percuma di CoddyKit. Ini ialah pelajaran 3 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Ansible Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Ansible Academy merangkumi sejumlah 4 pelajaran.
Pengendali Berjalan pada Penghujung
Secara lalai, semua pengendali yang diberitahu berjalan sekali pada penghujung pelaksanaan, selepas setiap tugas selesai. Bukan pada saat ia diberitahu.
Mengapa Menangguhkannya?
Penangguhan bermakna perkhidmatan dimulakan semula sekali walaupun selepas banyak perubahan konfigurasi. Ini mengelakkan mula semula yang tidak diperlukan di tengah-tengah pelaksanaan dan menjimatkan masa.
Setiap Hos, Bukan Global
Masa pengendali dijejak bagi setiap hos. Setiap hos menjalankan pengendalinya sendiri yang berada dalam baris gilir pada penghujung pelaksanaan, tanpa bergantung pada hos lain.
Masalah Mula Semula Lewat
Kadang-kadang tugas seterusnya memerlukan perkhidmatan sudah dimulakan semula. Menunggu sehingga penghujung pelaksanaan sudah terlambat, jadi anda perlu mengosongkan baris gilir lebih awal.
Kenali flush_handlers
Tugas meta flush_handlers memaksa semua pengendali yang menunggu untuk berjalan sekarang juga, di tengah-tengah pelaksanaan.
- name: Run queued handlers now
ansible.builtin.meta: flush_handlersIa Ialah Tugas meta
flush_handlers ialah tindakan khas meta yang mengawal Ansible sendiri, bukannya menyentuh hos jauh.
Kegunaan Biasa
Ubah konfigurasi, kosongkan baris gilir supaya perkhidmatan dimulakan semula, kemudian jalankan tugas ujian asap terhadap perkhidmatan yang baru dimulakan semula itu.
- name: Update config
ansible.builtin.template:
src: app.j2
dest: /etc/app.conf
notify: Restart app
- ansible.builtin.meta: flush_handlers
- name: Check health
ansible.builtin.uri:
url: http://localhost/healthKegagalan dan Pengendali
Jika hos gagal sebelum penghujung pelaksanaan, pengendali yang menunggu biasanya tidak akan berjalan. Itulah salah satu sebab pengosongan baris gilir lebih awal boleh menjadi lebih selamat.
force_handlers sebagai Jaring Keselamatan
Tetapkan force_handlers kepada true pada sesuatu pelaksanaan untuk menjalankan pengendali yang berada dalam baris gilir walaupun hos gagal kemudian. Berguna untuk mula semula bagi tujuan pembersihan.
- hosts: web
force_handlers: true
tasks:
- ...Kosongkan Baris Gilir Secara Berhemat
Gunakan flush_handlers hanya apabila urutan benar-benar memerlukannya. Penggunaan berlebihan menghapuskan manfaat pengelompokan yang diberikan oleh pengendali.
Garis Masa
Tugas berjalan dari atas ke bawah, pengendali menunggu dalam baris gilir, kemudian semuanya dicetuskan pada penghujung pelaksanaan kecuali anda mengosongkannya lebih awal. ⏱️
Semakan Pantas
Anda mesti memulakan semula perkhidmatan di tengah-tengah pelaksanaan supaya tugas seterusnya boleh mengaksesnya. Apakah yang anda gunakan?
Imbas Kembali
Pengendali biasanya berjalan sekali pada penghujung pelaksanaan, bagi setiap hos. Gunakan flush_handlers untuk mencetuskannya lebih awal, dan force_handlers untuk memastikan ia berjalan walaupun berlaku kegagalan. 🚀
Pelajari YAML dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 30
- Pelajaran
- 120
Soalan Lazim
Adakah pelajaran “Bila Handler Berjalan & flush_handlers” percuma?
Ya — teks penuh “Bila Handler Berjalan & flush_handlers” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Ansible Academy, tingkat taraf kepada CoddyKit PRO. Kursus Ansible Academy merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “Bila Handler Berjalan & flush_handlers”?
Kawal masa handler dijalankan pada akhir play. Anda berlatih Ansible Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Ansible Academy?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Ansible Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 3 daripada 4.
Berapa lamakah pelajaran “Bila Handler Berjalan & flush_handlers” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Ansible Academy ini?
Ya. Setiap pelajaran Ansible Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Maklumkan Handler Apabila Berlaku Perubahan
- Mentakrifkan Handler & Corak Mulakan Semula
- Bila Handler Berjalan & flush_handlers
- Listen: Satu Pencetus, Banyak Handler