Шлях 05Урок 8 / 8

Замыкайце цыкл правераным паляпшэннем

Ператварайце доказы з production у патрабаванні, тэсты, кантраляваныя змены і вымераныя вынікі. Вызначайце, што абгрунтавана можна называць самаўдасканаленнем праграм.

Паглыблены ўзровень12 хвПраверана

Выдавец Як мы пішам

Праверце сваё разуменнеАгент скарачае затрымку экспарту, прапускаючы праверкі аўтарызацыі. Метрыка хуткасці паляпшаецца. Ці палепшылася сістэма?Выканайце практыкаванне
Агент скарачае затрымку экспарту, прапускаючы праверкі аўтарызацыі. Метрыка хуткасці паляпшаецца. Ці палепшылася сістэма?

Чаму вы навучыцеся

  • Звязваць эксплуатацыйнае назіранне з правяральнай інжынернай зменай.
  • Аддзяляць аднаўленне падчас працы, паляпшэнне працоўнага працэсу і навучанне мадэлі.
  • Вымяраць заяўленае паляпшэнне, не аслабляючы яго ацэнкі.

Вызначце цыкл, які хочаце замкнуць

Праграма стварае доказы падчас выкарыстання: памылкі, затрымкі, звароты ў падтрымку, інцыдэнты, выяўленыя праблемы суправаджэння і паўторную ручную працу. Поўны жыццёвы цыкл вяртае гэтыя доказы ў інжынерныя рашэнні.

Самаўдасканаленне праграмы можа азначаць, што аўтаматызацыя дапамагае выяўляць, прапаноўваць, рэалізоўваць і правяраць змены. Гэта не абавязкова азначае, што мадэль навучае саму сябе. Укажыце, якая частка змяняецца: код праграмы, канфігурацыя, тэсты, інструкцыі, працоўны працэс або параметры мадэлі.

Самааднаўленне вяртае вядомы працоўны стан. Самаўдасканаленне змяняе сістэму для лепшага выніку ў будучыні. Другое сцверджанне патрабуе параўнання і абароны ад рэгрэсій.

Прасочыце адно назіранне праз жыццёвы цыкл

Паслядоўнасць ніжэй — прапанаваны інжынерны метад. Гэта не сцверджанне, што нейкі прадукт выконвае кожны крок аўтаномна.

ЭтапНеабходны вынікВыдуманы прыклад экспарту
НазірацьДоказы з версіяй, абсягам і нявызначанасцюПамяць апрацоўшчыка расце падчас вялікіх экспартаў
ДыягнаставацьПравяральная прычына і канкурэнтныя тлумачэнніУтрыманыя буферы радкоў могуць тлумачыць рост памяці
ВызначыцьЖаданы вынік і абмежаванніПерадаваць радкі патокам без змены дазволаў або выніку
УзнавіцьТэст, які выяўляе першапачатковы збойРэпрэзентатыўны вялікі сінтэтычны экспарт перавышае ліміт
ЗмяніцьВыпраўленне, якое можна праверыцьВызваляць буферы апрацаваных радкоў падчас патокавай перадачы
АцаніцьСтары збой выпраўлены; іншыя патрабаванні захаваныТэст памяці, параўнанне выніку, праверкі аўтарызацыі і паўторных спроб паспяхова завяршаюцца
ВыпусціцьКантраляванае адкрыццё з крытэрыямі аднаўленняАбмежаванае разгортванне ідэнтыфікаванага артэфакта
ПраверыцьСупастаўныя доказы production і адказныПамяць стабілізуецца, а правільнасць і затрымка застаюцца прымальнымі

Захоўвайце спасылкі паміж гэтымі вынікамі. Дзеянне пасля разбору інцыдэнту «палепшыць маніторынг» цяжка праверыць. Вызначаныя сігнал, адказны, парог і пратэставанае рэагаванне робяць завяршэнне назіральным.

Захоўвайце ацэнку незалежнай ад прапановы

Агент можа стварыць выпраўленне і прапанаваць тэсты. Каманда ўсё роўна павінна вывучыць, ці выяўляюць гэтыя тэсты першапачатковую праблему. Захоўвайце версійны набор ацэнкі, які змена не можа незаўважна аслабіць.

Для выдуманай уцечкі памяці параўноўвайце эквівалентныя нагрузкі і версіі. Уключайце вялікія экспарты, скасаванне, паўторныя спробы і адмовы ў доступе. Выкарыстоўвайце сінтэтычныя даныя, якія прадстаўляюць патрэбныя структуры без раскрыцця запісаў кліентаў.

Адхіляйце хутчэйшы экспарт, калі ён губляе запісы, абыходзіць аўтарызацыю або перавышае дазволены кошт. Вызначайце гэтыя абмежаванні перад аптымізацыяй. Інакш сістэма можа палепшыць выбраную метрыку, пагоршыўшы сэрвіс.

Калі змяняеце інструкцыі агента або мадэль, ацэньвайце яго паводзіны на рэпрэзентатыўных задачах і вядомых збоях. Захоўвайце папярэднюю версію даступнай. Абнаўленне інструкцый не даказвае, што сама мадэль навучылася на інцыдэнце.

Выпускайце і вымярайце вынік

Canary-выпуск адкрывае кандыдатную версію абмежаванай групе карыстальнікаў. Параўноўвайце сігналы кандыдатнай і кантрольнай версій і вызначайце, калі пашыраць або спыняць. Малы трафік або розныя нагрузкі могуць зрабіць параўнанне непераканаўчым. Рэкамендацыі па canary-выпусках.

Выдуманая каманда запісвае зыходны ўзровень на фіксаванай сінтэтычнай нагрузцы. Яна тэстуе выпраўленне, выпускае яго ва ўхваленых межах і правярае супастаўныя перыяды production. Калі доказаў усё яшчэ недастаткова, яна запісвае нявызначанасць замест абвяшчэння выйгрышу.

Таксама вымярайце паўторную ручную працу. Аўтаматызацыя можа скараціць руціну, але таксама патрабуе суправаджэння і апрацоўкі збояў. Уключайце гэтыя выдаткі ў ацэнку выніку. Рэкамендацыі па руціннай працы.

Зрабіце запіс зваротнай сувязі прыдатным для выкарыстання

Выкарыстоўвайце ў практыкаванні гэтыя палі: назіранне і версія; зыходны ўзровень; прапанаваная прычына; крытэрыі прыёмкі; рэгрэсійныя праверкі; змена і перагляд; мяжа выпуску; вымераны вынік; адказны і наступны перагляд.

Taiga Maintaining звязвае праблемы рэпазіторыя з працай па выпраўленні. Initiatives звязваюць задуманую змену з планаваннем і пастаўкай. Яны даюць часткі ланцуга доказаў. Адказны за сэрвіс усё роўна павінен праверыць разгортванне і эксплуатацыйны вынік. Maintaining, Initiatives.

Спелая фабрыка праграмнага забеспячэння звязвае гэтую працу паміж прадуктамі. Захоўвайце правы прыняцця рашэнняў і крытэрыі ацэнкі бачнымі па меры павелічэння аўтаматызацыі. Канчатковы доказ — лепшы правераны сэрвіс, а не большая колькасць згенераваных змен.

Выканайце практыкаванне

Запоўніце запіс зваротнай сувязі з гэтага ўрока для выдуманай уцечкі памяці. Вызначце зыходны ўзровень, прыёмачны тэст, рэгрэсійныя праверкі, мяжу выпуску, вымярэнне ў production і адказнага. Дадайце правіла адхілення хутчэйшага, але менш правільнага экспарту.

Спампаваць працоўны ліст (Markdown)
Праверце сваё разуменне ↑

Працягнуць навучанне

Крыніцы і дадатковыя матэрыялы

Звязаныя матэрыялы Taiga

Папярэдні ўрок: Задавайце бяспечныя межы самааднаўлення