Noslēdziet ciklu ar pārbaudītu uzlabojumu
PabeigtsPārvērtiet produkcijas vides pierādījumus prasībās, testos, kontrolētās izmaiņās un izmērītos rezultātos. Definējiet, ko atbildīgi var nozīmēt programmatūras pašuzlabošanās.
Publicē TaigaKā mēs rakstām
Pārbaudiet savu izpratniAģents samazina eksporta aizkavi, izlaižot autorizācijas pārbaudes. Ātruma rādītājs uzlabojas. Vai sistēma ir uzlabojusies?Izpildiet uzdevumu
Ko apgūsiet
- Saistiet ekspluatācijas novērojumu ar pārbaudāmu inženiertehnisku izmaiņu.
- Atdaliet izpildlaika atjaunošanu, darbplūsmas uzlabošanu un modeļa apmācību.
- Mēriet apgalvotu uzlabojumu, nevājinot tā novērtēšanu.
Definējiet ciklu, ko vēlaties noslēgt
Programmatūra lietošanas laikā rada pierādījumus: kļūdas, aizkaves, atbalsta pieprasījumus, incidentus, uzturēšanas atradnes un atkārtotu manuālu darbu. Pilns dzīvescikls atgriež šos pierādījumus izstrādes lēmumos.
Programmatūras pašuzlabošanās var nozīmēt, ka automatizācija palīdz identificēt, piedāvāt, īstenot un pārbaudīt izmaiņas. Tas ne vienmēr nozīmē, ka modelis apmāca pats sevi. Norādiet, kura daļa mainās: lietotnes kods, konfigurācija, testi, instrukcijas, darbplūsma vai modeļa parametri.
Automātiska atjaunošanās atjauno zināmu darbības stāvokli. Pašuzlabošanās maina sistēmu, lai nākotnē radītu labāku rezultātu. Otrajam apgalvojumam vajag salīdzinājumu un aizsardzību pret regresijām.
Izsekojiet vienam novērojumam caur dzīvesciklu
Tālākā secība ir piedāvāta inženiertehniska metode. Tas nav apgalvojums, ka kāds produkts veic katru soli autonomi.
| Posms | Vajadzīgais rezultāts | Izdomātā eksporta piemērs |
|---|---|---|
| Novērot | Versēti pierādījumi ar tvērumu un nenoteiktību | Lielu eksportu laikā pieaug izpildprocesa atmiņas patēriņš |
| Diagnosticēt | Pārbaudāms cēlonis un konkurējoši skaidrojumi | Saglabāti rindu buferi var izskaidrot atmiņas pieaugumu |
| Definēt | Vēlamais rezultāts un ierobežojumi | Straumēt rindas, nemainot tiesības vai izvadi |
| Atkārtot | Tests, kas atklāj sākotnējo kļūmi | Reprezentatīvs liels sintētisks eksports pārsniedz limitu |
| Mainīt | Pārskatāms labojums | Straumēšanas laikā atbrīvot pabeigto rindu buferus |
| Novērtēt | Sākotnējā kļūme novērsta; citas prasības saglabātas | Atmiņas tests, izvades salīdzinājums, autorizācijas un atkārtotu mēģinājumu pārbaudes ir sekmīgas |
| Izlaist | Kontrolēta pieejamība ar atjaunošanas kritērijiem | Identificēta artefakta ierobežota izvietošana |
| Pārbaudīt | Salīdzināmi produkcijas vides pierādījumi un atbildīgais | Atmiņas patēriņš stabilizējas, kamēr pareizība un aizkave paliek pieņemamas |
Saglabājiet saites starp šiem rezultātiem. Pēcincidenta darbību „uzlabot uzraudzību“ ir grūti pārbaudīt. Definēts signāls, atbildīgais, slieksnis un pārbaudīta reakcija padara pabeigšanu novērojamu.
Saglabājiet novērtēšanu neatkarīgu no piedāvājuma
Aģents var izveidot ielāpu un piedāvāt testus. Komandai joprojām jāpārbauda, vai šie testi atklāj sākotnējo problēmu. Saglabājiet versētu novērtēšanas kopu, ko izmaiņa nevar nemanāmi vājināt.
Izdomātajai atmiņas noplūdei salīdziniet līdzvērtīgas darba slodzes un versijas. Iekļaujiet lielus eksportus, atcelšanu, atkārtotu mēģinājumu un piekļuves atteikuma gadījumus. Izmantojiet sintētiskus datus, kas atspoguļo attiecīgo datu struktūru, neatklājot klientu ierakstus.
Noraidiet ātrāku eksportu, ja tas izlaiž ierakstus, apiet autorizāciju vai pārsniedz atļautās izmaksas. Definējiet šos ierobežojumus pirms optimizācijas. Citādi sistēma var uzlabot izvēlēto rādītāju, vienlaikus pasliktinot pakalpojumu.
Ja maināt aģenta instrukcijas vai modeli, novērtējiet tā darbību ar reprezentatīviem uzdevumiem un zināmām kļūmēm. Saglabājiet iepriekšējo versiju pieejamu. Instrukciju atjaunināšana nepierāda, ka pamatā esošais modelis mācījās no incidenta.
Izlaidiet un izmēriet rezultātu
Canary laidiens padara kandidātversiju pieejamu ierobežotai grupai. Salīdziniet kandidāta un kontroles signālus un definējiet, kad paplašināt vai apturēt pieejamību. Reta datplūsma vai atšķirīgas darba slodzes var neļaut izdarīt secinājumu. Canary vadlīnijas.
Izdomātā komanda reģistrē sākuma mērījumu ar nemainīgu sintētisku darba slodzi. Tā pārbauda labojumu, izlaiž to apstiprinātā robežā un pārbauda salīdzināmus produkcijas vides periodus. Ja pierādījumu joprojām nepietiek, tā reģistrē nenoteiktību, nevis paziņo par ieguvumu.
Mēriet arī atkārtotu manuālu darbu. Automatizācija var samazināt rutīnas darbu, bet tai arī vajag uzturēšanu un kļūmju apstrādi. Vērtējot rezultātu, iekļaujiet šīs izmaksas. Rutīnas darba vadlīnijas.
Padariet atgriezeniskās saites ierakstu lietojamu
Uzdevumam izmantojiet šos laukus: novērojums un versija; sākuma mērījums; piedāvātais cēlonis; pieņemšanas kritēriji; regresijas pārbaudes; izmaiņa un pārskatīšana; laidiena robeža; izmērītais rezultāts; atbildīgais un nākamā pārskatīšana.
Taiga Maintaining saista repozitorija atradnes ar novēršanas darbu. Iniciatīvas saista paredzētu izmaiņu ar plānošanu un piegādi. Tās nodrošina daļas no pierādījumu ķēdes. Par pakalpojumu atbildīgajam joprojām jāpārbauda izvietošana un ekspluatācijas rezultāts. Maintaining, Initiatives.
Nobriedusi programmatūras ražotne saista šo darbu starp produktiem. Palielinoties automatizācijai, saglabājiet redzamas lēmumu tiesības un novērtēšanas kritērijus. Gala pierādījums ir labāks, pārbaudīts pakalpojums, nevis lielāks ģenerēto izmaiņu skaits.
Izpildiet uzdevumu
Aizpildiet šīs nodarbības atgriezeniskās saites ierakstu izdomātajai atmiņas noplūdei. Definējiet sākuma mērījumu, pieņemšanas testu, regresijas pārbaudes, laidiena robežu, produkcijas vides mērījumu un atbildīgo. Pievienojiet noteikumu ātrāka, bet mazāk pareiza eksporta noraidīšanai.
Lejupielādēt darblapu (Markdown)Noņemot šo atzīmi, tiek dzēsts viss šajā pārlūkā saglabātais progress.
Progress paliek šajā pārlūkā. Bez konta un izsekošanas.
Avoti un papildu lasāmviela
- Google SRE: Postmortem Culture ↗
- Google SRE: Canarying Releases ↗
- Google SRE: Eliminating Toil ↗
- Taiga docs: Maintaining ↗
- Taiga docs: Initiatives ↗