Mga programmer, devops ug mga iring ni Schrödinger

Mga programmer, devops ug mga iring ni Schrödinger
Ang kamatuoran sa usa ka network engineer (nga adunay noodles ug... asin?)

Karong bag-o, samtang naghisgot sa lainlaing mga insidente sa mga inhenyero, nakamatikod ako usa ka makapaikag nga sumbanan.

Niini nga mga diskusyon, ang pangutana sa "ugat nga hinungdan" kanunay nga moabut. Ang mga matinud-anon nga magbabasa tingali nahibal-an nga ako adunay daghan mga hunahuna sa kini okasyon. Sa daghang mga organisasyon, ang pagtuki sa insidente bug-os nga gibase sa kini nga konsepto. Gigamit nila ang lainlaing mga pamaagi sa pag-ila sa hinungdan-ug-epekto nga mga relasyon, sama sa "Lima ka Ngano". Kini nga mga pamaagi nag-isip sa gitawag nga "linearity of events" isip usa ka dili malalis nga dogma.

Kung imong hagiton kini nga ideya ug itudlo nga ang linearity mapasaligon nga malimbungon sa komplikado nga mga sistema, usa ka makaiikag nga diskusyon ang natawo. Madasigon nga miinsistir ang mga makiglalis nga ang kahibalo lamang sa "ugat nga hinungdan" nagtugot kanato nga masabtan kung unsa ang nanghitabo.

Namatikdan nako ang usa ka makapaikag nga sumbanan: lahi ang reaksyon sa mga developer ug devop sa kini nga ideya. Sa akong kasinatian, ang mga nag-develop mas lagmit nga makiglalis nga ang hinungdan nga hinungdan hinungdanon ug nga ang hinungdan-ug-epekto nga mga relasyon kanunay matukod sa mga panghitabo. Sa laing bahin, ang DevOps kanunay nga nagkauyon nga ang usa ka komplikado nga kalibutan dili kanunay nga nagsunod sa linearity.

Kanunay kong naghunahuna ngano kini? Unsa naghimo Ang mga programmer sa pagsaway sa ideya nga "ang gamut nga hinungdan usa ka mito" nga ingon niana? Sama sa immune system nga makaila sa langyaw nga ahente. Ngano nga ingon niini ang ilang reaksyon, samtang ang mga devops hilig hinuon hunahunaa kini nga ideya?

Dili ko hingpit nga sigurado, apan naa koy gihunahuna bahin niini. May kalabotan kini sa lainlaing mga konteksto diin kini nga mga propesyonal nagpahigayon sa ilang adlaw-adlaw nga trabaho.

Ang mga nag-develop kanunay nga nagtrabaho uban ang mga himan nga deterministiko. Siyempre, ang mga compiler, linker, operating system tanan komplikado nga mga sistema, apan naanad na kami sa kamatuoran nga naghatag sila usa ka deterministiko nga resulta, ug gihunahuna namon sila nga deterministiko: kung naghatag kami parehas nga data sa pag-input, nan kasagaran nga gipaabut namon ang parehas nga output. gikan niini nga mga sistema. Ug kung adunay problema sa output ("bug"), sulbaron kini sa mga developer pinaagi sa pag-analisar sa data sa input (gikan sa tiggamit o gikan sa usa ka hugpong sa mga himan sa panahon sa proseso sa pag-uswag). Gipangita nila ang usa ka "sayup" ug dayon giusab ang data sa input. Giayo niini ang "bug".

Mga programmer, devops ug mga iring ni Schrödinger
Batakang pangagpas sa pag-uswag sa software: ang parehas nga data sa pag-input nga kasaligan ug deterministiko nga nagpatungha sa parehas nga output.

Sa pagkatinuod, ang usa ka dili deterministikong resulta sa iyang kaugalingon giisip nga usa ka bug: kung ang wala damha o sayop nga output dili maprodyus, nan ang mga developers lagmit nga molugway sa imbestigasyon ngadto sa ubang mga bahin sa stack (operating system, network, ug uban pa) nga mas molihok usab. o dili kaayo deterministiko, nga nagpatunghag parehas nga resulta nga adunay parehas nga datos sa pag-input ... ug kung dili kana mao, unya kini giisip gihapon nga usa ka bug. Karon kini usa ka operating system o bug sa network.

Sa bisan unsa nga kaso, ang determinismo usa ka sukaranan, halos wala’y gihatag nga pangagpas alang sa kadaghanan sa mga programmer sa trabaho.

Apan alang sa bisan kinsa nga mga devops nga lalaki nga naggugol sa adlaw sa pag-racking sa hardware o paghunahuna sa usa ka cloud API, ang ideya sa usa ka hingpit nga deterministiko nga kalibutan (basta posible pa nga ma-mapa ang tanan nga mga input!) Bisan pag isalikway nimo Ang BOHF nagbiaybiay bahin sa sun spots, ang eksperyensiyadong mga inhenyero nakakita sa labing katingad-an nga mga butang niining kalibotana. Nasayod sila niana bisan ang singgit sa tawo makapahinay sa server, wala pay labot ang milyonmilyong ubang mga butang sa palibot.

Busa mas sayon ​​alang sa eksperyensiyadong mga inhenyero nga magduhaduha nga ang tanan nga mga insidente adunay usa ka hinungdan, ug ang mga teknik sama sa "Lima ka Ngano" husto (ug balik-balikon!) Motultol sa maong hinungdan. Sa tinuud, sukwahi kini sa ilang kaugalingon nga kasinatian, diin ang mga piraso sa puzzle dili kaayo haom sa praktis. Busa, mas dali nilang dawaton kini nga ideya.

Siyempre, wala ko mag-ingon nga ang mga developers mga walay pulos, hungog, o dili makasabut kon sa unsang paagi ang linearity mahimong malimbongon. Ang eksperyensiyadong mga programmer tingali nakakita usab og daghang dili determinismo sa ilang panahon.

Apan alang kanako ang usa ka sagad nga reaksyon gikan sa mga developer sa kini nga mga debate kanunay adunay kalabotan sa kamatuoran nga ang konsepto sa determinismo. nag-alagad kanila og maayo sa kinatibuk-an sa adlaw-adlaw nga trabaho. Wala sila makasugat og nondeterminism sama sa kanunay nga ang mga inhenyero kinahanglan nga modakop sa mga iring ni Schrödinger sa ilang imprastraktura.

Mahimong dili kini hingpit nga ipasabut ang naobserbahan nga mga reaksyon sa developer, apan kini usa ka kusgan nga pahinumdom nga ang among mga reaksyon usa ka komplikado nga pagsagol sa daghang mga hinungdan.

Mahinungdanon nga hinumdoman kini nga pagkakomplikado, kung nag-atubang kami sa usa ka insidente, nagtinabangay sa usa ka pipeline sa paghatud sa software, o pagsulay nga masabtan ang mas lapad nga kalibutan.

Source: www.habr.com

Idugang sa usa ka comment