Programer, devops sareng ucing Schrödinger

Programer, devops sareng ucing Schrödinger
Realitas insinyur jaringan (kalayan mie sareng ... uyah?)

Anyar-anyar ieu, nalika ngabahas rupa-rupa kajadian sareng insinyur, kuring ningali pola anu pikaresepeun.

Dina diskusi ieu, sual "akar sabab" invariably muncul. Pamiarsa anu satia sigana terang yén kuring gaduh sababaraha pikiran on ieu ngeunaan. Dina seueur organisasi, analisa kajadian dumasar kana konsép ieu. Aranjeunna ngagunakeun téknik anu béda pikeun ngaidentipikasi hubungan sabab-akibat, sapertos "Lima Naha". Métode ieu nganggap anu disebut "linearitas kajadian" salaku dogma anu teu bisa dibantah.

Nalika anjeun tangtangan ideu ieu sareng nunjukkeun yén linearitas ngayakinkeun nipu dina sistem anu kompleks, diskusi anu pikaresepeun dilahirkeun. Disputants passionately keukeuh yén ngan pangaweruh ngeunaan "akar ngabalukarkeun" ngamungkinkeun urang pikeun ngarti naon anu lumangsung.

Kuring noticed hiji pola metot: pamekar jeung devops meta béda pikeun gagasan ieu. Dina pangalaman abdi, pamekar anu leuwih gampang ngajawab yén masalah akar ngabalukarkeun sarta yén hubungan ngabalukarkeun-jeung-pangaruh bisa salawasna ngadegkeun dina acara. Di sisi anu sanés, DevOps langkung sering satuju yén dunya anu kompleks henteu salawasna taat kana linieritas.

Kuring sok heran naha ieu? Naon ngajadikeun programer mun criticize gagasan "akar cukang lantaranana nyaeta mitos" kawas éta? Kawas sistim imun nu ngakuan agén asing. Naha maranéhna meta cara kieu, sedengkeun devops rada condong mertimbangkeun gagasan ieu?

Kaula teu sagemblengna yakin, tapi kuring boga sababaraha pikiran ngeunaan ieu. Éta aya hubunganana sareng kontéks anu béda-béda dimana para profesional ieu ngalaksanakeun padamelan sapopoé.

Pamekar sering dianggo sareng alat deterministik. Tangtosna, kompiler, linker, sistem operasi mangrupikeun sistem anu kompleks, tapi urang biasa kanyataan yén aranjeunna masihan hasil anu pasti, sareng urang ngabayangkeun aranjeunna salaku deterministik: upami urang nyayogikeun data input anu sami, maka urang biasana ngarepkeun kaluaran anu sami. tina sistem ieu. Sareng upami aya masalah sareng kaluaran ("bug"), maka pamekar ngabéréskeunana ku nganalisa data input (boh ti pangguna atanapi tina sakumpulan alat nalika prosés pangwangunan). Aranjeunna néangan hiji "kasalahan" lajeng ngarobah data input. Ieu ngalereskeun "bug".

Programer, devops sareng ucing Schrödinger
Anggapan dasar ngembangkeun software: data input sarua reliably tur deterministically ngahasilkeun kaluaran sarua.

Kanyataanna, hasil non-deterministik sorangan dianggap bug: lamun kaluaran kaduga atawa erroneous teu dihasilkeun, teras pamekar condong manjangkeun panalungtikan ka bagian séjén tumpukan (sistem operasi, jaringan, jsb) anu ogé kalakuanana leuwih. atanapi kirang deterministically, ngahasilkeun hasil sarua jeung data input sarua ... jeung lamun teu kitu, mangka ieu masih dianggap bug. Ieu ngan ayeuna sistem operasi atawa bug jaringan.

Dina naon waé, determinisme mangrupikeun asumsi dasar, ampir-ampir waé pikeun seueur anu dilakukeun ku programer.

Tapi pikeun saha waé jalma anu nyéépkeun sadinten pikeun ngarambat hardware atanapi milarian API awan, ideu dunya anu lengkep deterministik (salami éta mungkin pikeun peta sadaya input!) mangrupikeun konsép anu saé. Komo lamun disisihkeun BOHF guyonan ngeunaan bintik panonpoé, insinyur ngalaman geus katempo hal aneh di dunya ieu. Aranjeunna terang éta malah jeritan manusa bisa ngalambatkeun turun server, teu nyebut jutaan faktor sejenna dina lingkungan.

Janten langkung gampang pikeun insinyur anu ngalaman ragu yén sadaya kajadian gaduh akar sabab, sareng téknik sapertos "Lima Whys" bakal leres (sareng tiasa diulang deui!) Kanyataanna, ieu contradicts pangalaman sorangan, dimana potongan teka teu cocog jadi rapih dina prakna. Ku alatan éta, maranéhna narima gagasan ieu leuwih gampang.

Tangtosna, kuring henteu nyarios yén pamekar naif, bodo, atanapi henteu tiasa ngartos kumaha linearitas tiasa nipu. Programer anu berpengalaman sigana ogé ningali seueur non-determinisme dina waktosna.

Tapi sigana kuring yén réaksi umum ti pamekar dina debat ieu sering aya hubunganana sareng kanyataan yén konsép determinisme. porsi aranjeunna ogé sakabéh dina pagawéan sapopoé. Aranjeunna teu sapatemon nondeterminism sakumaha mindeng insinyur kudu nyekel ucing Schrödinger dina infrastruktur maranéhanana.

Ieu bisa jadi teu sapinuhna ngajelaskeun réaksi pamekar observasi, tapi mangrupa panginget kuat yén réaksi urang téh campuran kompléks sababaraha faktor.

Penting pikeun émut pajeulitna ieu, naha urang nuju nyanghareupan hiji kajadian, kolaborasi dina pipa pangiriman parangkat lunak, atanapi nyobian ngartos dunya anu langkung lega.

sumber: www.habr.com

Tambahkeun komentar