Ansible Academy · Oppitunti

Listen: yksi käynnistin, monta käsittelijää

Välittäkää yksi ilmoitus useille käsittelijöille.

Oppitunti 4/413 vaihetta

Listen: yksi käynnistin, monta käsittelijää on ilmainen Ansible Academy-oppitunti CoddyKitissä. Tämä on oppitunti 4/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Ansible Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Ansible Academy-kurssilla on yhteensä 4 oppituntia.

Yksi tapahtuma, monta reaktiota

Joskus yhden muutoksen pitäisi käynnistää useita handlereita samanaikaisesti. listen-avainsanan avulla useat handlerit voivat tilata yhden aiheen.

Ilmoittakaa aiheesta, älkää nimestä

listen-toimintoa käytettäessä tehtävän notify viittaa loogiseen tapahtumanimeen yhden tietyn handlerin nimen sijaan.

- name: Update certs
  ansible.builtin.copy:
    src: site.pem
    dest: /etc/ssl/site.pem
  notify: restart web stack

Handlerit tilaavat aiheen listenillä

Kukin handler lisää listen-rivin, jossa nimetään sama aihe. Kaikki kyseistä aihetta kuuntelevat handlerit käynnistyvät, kun aiheesta ilmoitetaan.

handlers:
  - name: Restart nginx
    ansible.builtin.service:
      name: nginx
      state: restarted
    listen: restart web stack

Monta handleria, yksi aihe

Antakaa useille handlereille sama listen-arvo, niin yksi notify välittää ilmoituksen niille kaikille. Tämä sopii erinomaisesti ryhmiteltyihin uudelleenkäynnistyksiin.

  - name: Restart php-fpm
    ansible.builtin.service:
      name: php-fpm
      state: restarted
    listen: restart web stack

Irrottakaa tehtävät handlereista

Suurin hyöty on irrottaminen: tehtävät viittaavat aiheeseen, ja voitte lisätä tai poistaa handlereita koskematta ilmoittaviin tehtäviin.

Nimi on yhä valinnainen mutta hyödyllinen

listen-toimintoa käyttävällä handlerilla voi silti olla nimi, mikä pitää tulosteen helposti luettavana ja sallii muiden tehtävien ilmoittaa sille myös suoraan.

Handler voi kuunnella useita aiheita

Antakaa listen-arvoksi lista, niin yksi handler reagoi useisiin eri aiheisiin. Se reagoi siihen tapahtumaan, josta ilmoitetaan.

    listen:
      - restart web stack
      - reload tls

Yhä idempotentti

Aihepohjaiset ilmoitukset noudattavat samoja sääntöjä: handlerit käynnistyvät vain tilassa changed, ja kukin niistä suoritetaan edelleen enintään kerran playn aikana.

Järjestys on yhä määritysjärjestys

Kun aihe herättää useita handlereita, ne suoritetaan siinä järjestyksessä, jossa ne on määritetty handlers-listassa, aivan kuten tavalliset handlerit.

Yleinen jaetuissa rooleissa

Uudelleenkäytettävät roolit käyttävät listen-toimintoa, jotta niiden käyttäjät ilmoittavat vakaasta aiheesta samalla, kun rooli voi vapaasti muuttaa sisäistä handler-joukkoaan.

notify vastaan listen

notify on tehtävän lähettämä signaali; listen on handlerin tilaus. Yhdessä ne muuttavat yhden tapahtuman useiksi toiminnoiksi. 🔔

Pikatarkistus

Haluatte yhden notify-kutsun käynnistävän kolme palvelua samanaikaisesti. Mikä mahdollistaa sen, että useat käsittelijät vastaavat yhteen aiheeseen?

Kertaus

listen-toiminnolla tehtävä ilmoittaa aiheesta ja jokainen tilattu käsittelijä suoritetaan. Tämä irrottaa tehtävät käsittelijöistä ja skaalautuu siististi. 🎯

Aloita maksutta

Opi YAML tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
30
Oppitunnit
120

Usein kysytyt kysymykset

Onko oppitunti ”Listen: yksi käynnistin, monta käsittelijää” ilmainen?

Kyllä – oppitunnin ”Listen: yksi käynnistin, monta käsittelijää” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Ansible Academy-kurssin, päivitä CoddyKit PROhon. Ansible Academy-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Listen: yksi käynnistin, monta käsittelijää”?

Välittäkää yksi ilmoitus useille käsittelijöille. Harjoittelet Ansible Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Ansible Academy-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Ansible Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 4/4.

Kuinka kauan ”Listen: yksi käynnistin, monta käsittelijää”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Ansible Academy-oppitunnilla?

Kyllä. Jokainen Ansible Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Käsittelijän ilmoittaminen muutoksen yhteydessä
  2. Käsittelijöiden määrittäminen ja uudelleenkäynnistysmallit
  3. Milloin käsittelijät suoritetaan ja flush_handlers
  4. Listen: yksi käynnistin, monta käsittelijää
← Takaisin: Ansible Academy