Беҳтарин амалияҳои DevOps барои таҳиягарон. Антон Бойко (2017)

Беҳтарин амалияҳои DevOps барои таҳиягарон. Антон Бойко (2017)

Дар гузориш дар бораи баъзе амалияҳои DevOps сухан меравад, аммо аз нуқтаи назари таҳиягар. Одатан, ҳама муҳандисоне, ки ба DevOps ҳамроҳ мешаванд, аллакай таҷрибаи чандинсолаи маъмуриро дар зери камари худ доранд. Аммо ин маънои онро надорад, ки дар ин ҷо барои таҳиякунанда ҷой нест. Бештари вақт, таҳиягарон бо ислоҳи "иштибоҳи навбатии фаврӣ муҳими рӯз" банд ҳастанд ва онҳо барои дидани зуд ба майдони DevOps вақт надоранд. Дар фаҳмиши муаллиф, DevOps, пеш аз ҳама, ақли солим аст. Дуюм, ин имкони самараноктар шудан аст. Агар шумо таҳиягар бошед, ақли солим дошта бошед ва мехоҳед ҳамчун як бозигари даста самараноктар бошед, ин гузориш барои шумост.

Биёед ман худро муаррифӣ кунам, ман комилан эътироф мекунам, ки дар ҳуҷра одамоне ҳастанд, ки маро намешиносанд. Номи ман Антон Бойко, ман Microsoft Azure MVP ҳастам. MVP чист? Ин модел-намоиш-баранда аст. Модели-Намоиш-Президент маҳз ман аст.

Илова бар ин, ман дар айни замон вазифаи меъмори ҳалли худро дар Ciklum дорам. Ва ба наздикӣ ман ба худ чунин домени зебо харидам ва почтаи электронии худро нав кардам, ки онро одатан дар презентатсияҳо нишон медиҳам. Шумо метавонед ба ман дар ин ҷо нависед: me [dog] byokoant.pro. Шумо метавонед ба ман бо почтаи электронӣ саволҳо диҳед. Ман одатан ба онҳо ҷавоб медиҳам. Ягона чизе, ки ман намехоҳам аз почтаи электронӣ саволҳое гирам, ки ба ду мавзӯъ марбутанд: сиёсат ва дин. Шумо метавонед ба ман дар бораи ҳама чизи дигар тавассути почтаи электронӣ нависед. Чанд вақт мегузарад, ман ҷавоб медиҳам.

Беҳтарин амалияҳои DevOps барои таҳиягарон. Антон Бойко (2017)

Чанд сухан дар бораи худ:

  • Ман 10 сол боз дар ин соҳа кор мекунам.
  • Ман дар Microsoft кор мекардам.
  • Ман падари асосгузори ҷомеаи Azure Украина ҳастам, ки мо дар ҷое дар соли 2014 таъсис додаем. Ва мо онро хануз дорем ва инкишоф дода истодаем.
  • Ман инчунин падари муассиси конфронси Azure ҳастам, ки мо дар Украина баргузор мекунем.
  • Ман инчунин дар ташкили Global Azure Bootcamp дар Киев кӯмак мекунам.
  • Тавре ки ман гуфтам, ман MVP Microsoft Azure ҳастам.
  • Ман дар конфронсҳо зуд-зуд баромад мекунам. Ман воқеан суханронӣ карданро дар конфронсҳо дӯст медорам. Дар давоми як соли охир ман тавонистам тақрибан 40 маротиба баромад кунам. Агар шумо аз Украина, Беларус, Лаҳистон, Булғористон, Шветсия, Дания, Нидерландия, Испания гузаред ё ягон кишвари дигари Аврупоро бидиҳед ё бигиред, пас эҳтимол дорад, ки вақте шумо ба конфронсе меравед, ки дар ҷараёни он мавзӯи абрӣ дорад, шумо метавонед маро дар рӯйхати баромадкунандагон бубинед.
  • Ман ҳам як мухлиси Star Trek ҳастам.

Беҳтарин амалияҳои DevOps барои таҳиягарон. Антон Бойко (2017)

Биёед каме дар бораи рӯзнома сӯҳбат кунем. Рӯзномаи мо хеле содда аст:

  • Мо дар бораи чӣ будани DevOps сӯҳбат хоҳем кард. Биёед бифаҳмем, ки чаро ин муҳим аст. Қаблан, DevOps як калимаи калидӣ буд, ки шумо дар резюмеи худ навиштед ва дарҳол +500 доллари амрикоӣ маош гирифтед. Акнун ба шумо лозим аст, ки масалан, blockchain дар резюмеи худ нависед, то ба маоши худ +500 доллар гиред.
  • Ва он гоҳ, вақте ки мо каме дар бораи ин чист, мо дар бораи он чӣ гуна амалияҳои DevOps сӯҳбат мекунем. Аммо на он қадар дар заминаи DevOps дар маҷмӯъ, балки дар бораи он амалияҳои DevOps, ки метавонанд барои таҳиягарон ҷолиб бошанд. Ман ба шумо мегӯям, ки чаро онҳо метавонанд ба шумо таваҷҷӯҳ кунанд. Ман ба шумо мегӯям, ки чаро шумо бояд ин корро анҷом диҳед ва чӣ гуна он метавонад ба шумо дар эҳсоси дарди камтар кӯмак расонад.

Беҳтарин амалияҳои DevOps барои таҳиягарон. Антон Бойко (2017)

Тасвири анъанавӣ, ки бисёриҳо нишон медиҳанд. Ин дар бисёр лоиҳаҳо рӯй медиҳад. Ин аст, ки мо шӯъбаҳои таҳия ва амалиёт дорем, ки нармафзори моро дастгирӣ мекунанд. Ва ин шуъбахо бо хамдигар алока надоранд.

Эҳтимол, агар шумо онро дар шӯъбаҳои DevOps ва амалиётҳо ба таври равшан эҳсос карда натавонистед, шумо метавонед бо шӯъбаҳои Dev ва QA муқоиса кунед. Одамоне ҳастанд, ки нармафзорро таҳия мекунанд ва одамони QA ҳастанд, ки аз нуқтаи назари таҳиягарон бад ҳастанд. Масалан, ман рамзи олиҷаноби худро ба анбор месупорам ва дар он ҷо як бадкирдор нишастааст, ки ин кодро ба ман бармегардонад ва мегӯяд, ки рамзи шумо бад аст.

Ин ҳама аз он сабаб рӯй медиҳад, ки одамон бо ҳамдигар муошират намекунанд. Ва онҳо аз байни девори нофаҳмӣ баъзе бастаҳо, баъзе барномаҳоро ба ҳамдигар мепартоянд ва кӯшиш мекунанд, ки бо онҳо коре кунанд.

Маҳз ҳамин деворест, ки фарҳанги DevOps барои нест кардан пешбинӣ шудааст, яъне. одамонро маҷбур кунед, ки бо ҳамдигар муошират кунанд ва ҳадди аққал фаҳманд, ки одамони гуногун дар лоиҳа чӣ кор мекунанд ва чаро кори онҳо муҳим аст.

Беҳтарин амалияҳои DevOps барои таҳиягарон. Антон Бойко (2017)

Ва вақте ки мо дар бораи DevOps гап мезанем, касе ба шумо мегӯяд, ки DevOps вақте аст, ки лоиҳа ҳамгироии доимӣ дорад; касе мегӯяд, ки DevOps агар лоиҳа амалияи "инфрасохтор ҳамчун код" -ро амалӣ кунад; касе хоҳад гуфт, ки қадами аввал ба DevOps шохаҳои хусусият, парчамҳои хусусият аст.

Беҳтарин амалияҳои DevOps барои таҳиягарон. Антон Бойко (2017)

Аслан, ин ҳама ба таври худ дуруст аст. Аммо инҳо танҳо таҷрибаҳои ниҳоии мо ҳастанд. Пеш аз гузаштан ба ин таҷрибаҳо, ман тавсия медиҳам, ки ба ин слайд, ки 3 марҳилаи татбиқи методологияи Dev-Ops-ро дар лоиҳаи шумо, дар ширкати шумо нишон медиҳад, тамошо кунед.

Ин слайд номи дуюми ғайрирасмӣ низ дорад. Шумо метавонед дар интернет ҷустуҷӯ кунед, то бидонед, ки 3 мушкетери DevOps чист. Эҳтимол аст, ки шумо ин мақоларо пайдо кунед. Чаро 3 мушкетёр? Дар зер гуфта мешавад: одамон, равандҳо ва маҳсулот, яъне. PPP - Портос, Портос ва Портос. Инҳоянд 3 мушкетери DevOps. Ин мақола муфассалтар шарҳ медиҳад, ки чаро ин муҳим аст ва он чиро дар бар мегирад.

Вақте ки шумо ба татбиқи фарҳанги DevOps шурӯъ мекунед, хеле муҳим аст, ки он бо тартиби зерин амалӣ карда шавад.

Дар аввал шумо бояд бо одамон сӯҳбат кунед. Ва шумо бояд ба одамон фаҳмонед, ки ин чист ва онҳо чӣ гуна метавонанд аз он фоида ба даст оранд.

Конфронси мо DotNet Fest ном дорад. Ва тавре созмондиҳандагон ба ман гуфтанд, мо асосан аудиторияи таҳиягаронро ба ин ҷо даъват кардем, аз ин рӯ, умедворам, ки аксари аҳли толор дар таҳия машғуланд.

Мо дар бораи одамон сӯҳбат хоҳем кард, мо дар бораи он, ки таҳиягарон ҳар рӯз чӣ кор кардан мехоҳанд. Онҳо бештар чиро мехоҳанд? Онҳо мехоҳанд, ки коди нав нависанд, чаҳорчӯбаҳои навро истифода баранд, хусусиятҳои нав эҷод кунанд. Таҳиягарон камтар аз чӣ мехоҳанд? Хатогиҳои кӯҳнаро ислоҳ кунед. Умедворам, ки шумо бо ман розӣ ҳастед. Ин аст он чизе ки таҳиягарон мехоҳанд. Онҳо мехоҳанд хусусиятҳои нав нависанд, онҳо намехоҳанд хатогиҳоро ислоҳ кунанд.

Миқдори хатоҳое, ки як таҳиягари мушаххас тавлид мекунад, аз рост будани дастони ӯ ва чӣ қадар онҳо аз китфҳои ӯ мерӯянд, на аз кисаҳои кунҷи ӯ вобаста аст. Аммо, бо вуҷуди ин, вақте ки мо як лоиҳаи калон дорем, баъзан чунин мешавад, ки ҳама чизро пайгирӣ кардан ғайриимкон аст, аз ин рӯ хуб мебуд, ки мо баъзе равишҳоро истифода барем, ки ба навиштани коди устувортар ва сифати баландтар кӯмак расонанд.

QA бештар чиро мехоҳад? Ман намедонам, ки онҳо дар толор ҳастанд ё не. Барои ман гуфтан душвор аст, ки ман QA мехоҳам, зеро ман ҳеҷ гоҳ чунин набудам. Ва ҳеҷ хафа ба бачаҳо, он хоҳад гуфт, ки ман умедворам, ки ман ҳеҷ гоҳ. Аммо на аз он сабаб, ки кори онхоро бемаънй ва бефоида ме-шуморам, балки аз он сабаб, ки худро шахсе намедонам, ки ин корро пурсамар ичро карда тавонад, аз ин ру хатто кушиш хам намекунам. Аммо аз он чизе ки ман мефаҳмам, он чизе ки QA ба ҳама маъқул нест, субҳ кор мекунад ва пайваста як навъ санҷишҳои регрессионӣ мегузаронад ва ба ҳамон хатоҳое, ки онҳо 3 спринт пеш ба таҳиягарон хабар дода буданд ва мегӯянд: "Шумо кай хоҳед буд. , Монсиер Д Артаньян, ин хатогиро ислоҳ кунед. Ва мнсье д'Артаньян ба у чавоб медихад: «Бале, бале, бале, ман онро аллакай ислох кардам». Ва чӣ гуна рӯй медиҳад, ки ман як хатогиро ислоҳ карда, 5 хато кардам.

Одамоне, ки ин ҳалли худро дар истеҳсолот дастгирӣ мекунанд, мехоҳанд, ки ин ҳалли бе хато кор кунад, то онҳо маҷбур нашаванд, ки серверро ҳар рӯзи ҷумъа, вақте ки ҳама одамони муқаррарӣ ба бар мераванд, дубора пур кунанд. Таҳиягарон рӯзи ҷумъа ҷойгир карда шуданд, маъмурон то рӯзи шанбе нишаста, кӯшиш мекунанд, ки ин густаришро ислоҳ кунанд.

Ва вақте ки шумо ба одамон фаҳмонед, ки онҳо ба ҳалли як мушкилот нигаронида шудаанд, шумо метавонед ба расмият даровардани равандҳо гузаред. Ин хеле муҳим аст. Чаро? Зеро вақте ки мо "расмият" мегӯем, барои шумо муҳим аст, ки чӣ гуна равандҳои шумо ҳадди аққал дар як рӯймоле рух медиҳанд. Шумо бояд фаҳмед, ки агар шумо, масалан, дар муҳити QA ё муҳити истеҳсолӣ ҷойгир шавед, он ҳамеша бо ин тартиб рух медиҳад; дар ин марҳилаҳо мо, масалан, санҷишҳои автоматии воҳидҳо ва санҷишҳои UI мегузаронем. Пас аз ҷойгиркунӣ, мо тафтиш мекунем, ки ҷойгиркунӣ хуб ё бад гузашт. Аммо шумо аллакай рӯйхати дақиқи амалҳоро доред, ки ҳангоми ба истеҳсолот ворид шудан бояд такрор ба такрор такрор карда шаванд.

Ва танҳо вақте ки равандҳои шумо ба расмият дароварда мешаванд, шумо ба интихоби маҳсулоте шурӯъ мекунед, ки ба шумо автоматикунонии ин равандҳо кӯмак мекунанд.

Мутаассифона, ман бисёр вақт мебинам, ки ин баръакс рӯй медиҳад. Ҳамин ки касе калимаи "DevOps"-ро мешунавад, онҳо фавран насб кардани Ҷенкинсро пешниҳод мекунанд, зеро онҳо боварӣ доранд, ки баробари насб кардани Ҷенкинс, онҳо DevOps хоҳанд дошт. Онҳо Ҷенкинсро насб карданд, мақолаҳои "Чӣ тавр" -ро дар вебсайти Ҷенкинс хонданд, кӯшиш карданд, ки равандҳоро ба ин мақолаҳо дохил кунанд ва сипас ба назди одамон омада, одамонро хам карданд ва гуфтанд, ки китоб мегӯяд, ки шумо бояд ин корро кунед, бинобар ин мо инро хамин тавр мекунем.

Ин нест, ки Ҷенкинс як воситаи бад аст. Ман ба ҳеҷ ваҷҳ инро гуфтанӣ нестам. Аммо ин танҳо яке аз маҳсулот аст. Ва кадом маҳсулоте, ки шумо истифода мебаред, бояд қарори охирини шумо бошад ва ҳеҷ гоҳ аввалини шумо бошад. Маҳсулоти шумо набояд аз ҷониби татбиқи фарҳанг ва равишҳо равона карда шавад. Фаҳмидани ин хеле муҳим аст, бинобар ин ман дар ин слайд вақти зиёд сарф мекунам ва ҳамаи инро барои муддати тӯлонӣ шарҳ медиҳам.

Беҳтарин амалияҳои DevOps барои таҳиягарон. Антон Бойко (2017)

Биёед дар бораи амалияҳои DevOps умуман сӯҳбат кунем. Онҳо чистанд? Фарқият дар чист? Чӣ тавр онҳоро санҷидан мумкин аст? Чаро онҳо муҳиманд?

Беҳтарин амалияҳои DevOps барои таҳиягарон. Антон Бойко (2017)

Аввалин таҷрибае, ки шумо дар бораи он шунидаед, Интегратсияи пайваста номида мешавад. Шояд касе дар лоиҳа ҳамгироии доимӣ (CI) дошта бошад.

Мушкилоти калонтарин дар он аст, ки аксар вақт ман аз шахс мепурсам: "Оё шумо дар лоиҳа CI доред?" ва ӯ мегӯяд: "Бале", пас вақте ки ман мепурсам, ки ӯ чӣ кор мекунад, вай ба ман комилан тамоми раванди автоматизатсияро тавсиф мекунад. Ин комилан дуруст нест.

Дарвоқеъ, таҷрибаи CI танҳо ба ҳамгироии коде нигаронида шудааст, ки одамони гуногун ба як навъи пойгоҳи ягонаи кодҳо менависанд. Ҳамааш ҳамин.

Дар баробари CI, одатан дар роҳ таҷрибаҳои дигар мавҷуданд - ба монанди Ҷойгиркунии доимӣ, Идоракунии релиз, аммо мо дар ин бора баъдтар сӯҳбат хоҳем кард.

Худи CI ба мо мегӯяд, ки одамони гуногун код менависанд ва ин код бояд пайваста ба як пойгоҳи коди ягона муттаҳид карда шавад.

Ин ба мо чӣ медиҳад ва чаро муҳим аст? Агар мо DotNet дошта бошем, ин хуб аст, ин забони тартибдодашуда аст, мо метавонем замимаи худро тартиб диҳем. Агар он тартиб диҳад, пас ин аллакай аломати хуб аст. Ин ҳанӯз маънои онро надорад, аммо ин аввалин аломати хубест, ки мо ҳадди аққал ҷамъоварӣ карда метавонем.

Он гоҳ мо метавонем якчанд санҷишҳоро иҷро кунем, ки ин ҳам як таҷрибаи алоҳида аст. Санҷишҳо ҳама сабз мебошанд - ин аломати дуюми хуб аст. Аммо бори дигар, ин маънои онро надорад.

Аммо чаро шумо ин корро мекунед? Ҳамаи амалияҳое, ки ман имрӯз дар бораи он сӯҳбат хоҳам кард, тақрибан як арзиш доранд, яъне тақрибан ҳамон манфиатҳо доранд ва инчунин тақрибан ҳамин тавр чен карда мешаванд.

Аввалан, он ба шумо имкон медиҳад, ки интиқолро суръат бахшед. Чӣ тавр ин ба шумо имкон медиҳад, ки интиқолро суръат бахшед? Вақте ки мо ба пойгоҳи коди худ тағйироти нав ворид мекунем, мо метавонем фавран кӯшиш кунем, ки бо ин код коре кунем. Мо интизор намешавем, ки рӯзи панҷшанбе фаро мерасад, зеро рӯзи панҷшанбе мо онро ба муҳити QA мебарорем, мо онро дар ин ҷо ва дар ин ҷо иҷро мекунем.

Ман ба шумо як қиссаи аламовареро аз ҳаёти худ мегӯям. Замоне буд, ки ман ҳанӯз ҷавон ва зебо будам. Ҳоло ман аллакай ҷавон, зебо ва оқил ва хоксор ҳастам. Чанде пеш ман дар як лоиҳа будам. Мо як дастаи бузурги тақрибан 30 таҳиягарон доштем. Ва мо як лоиҳаи бузурги Enterprise доштем, ки тақрибан 10 сол таҳия шудааст. Ва мо филиалҳои гуногун доштем. Дар анбори мо филиале доштем, ки дар он таҳиягарон роҳ мерафтанд. Ва филиале буд, ки версияи кодро, ки дар истеҳсолот аст, нишон дод.

Филиали истеҳсолӣ аз филиале, ки ба таҳиягарон дастрас буд, 3 моҳ ақиб монд. Ин чӣ маъно дорад? Ин маънои онро дорад, ки вақте ки ман дар ҷое хатогие доштам, ки бо айби таҳиягарон ба истеҳсолот меравад, зеро онҳо ба он иҷозат доданд ва бо айби QA, зеро онҳо ба он нигоҳ карданд, ин маънои онро дорад, ки агар ман вазифа барои ислоҳи истеҳсолот, пас ман бояд тағироти коди худро 3 моҳ пеш баргардонам. Ман бояд он чизеро, ки 3 моҳ пеш доштам, дар хотир дорам ва кӯшиш мекунам, ки онро дар он ҷо ислоҳ кунам.

Агар шумо то ҳол ин таҷриба надошта бошед, шумо метавонед онро дар лоиҳаи хонаи худ санҷед. Хӯроки асосии он аст, ки онро дар як тиҷоратӣ кӯшиш накунед. Якчанд сатри кодро нависед, онҳоро дар тӯли шаш моҳ фаромӯш кунед ва пас баргардед ва кӯшиш кунед, ки зуд фаҳмонед, ки ин сатрҳои код дар бораи чист ва чӣ гуна шумо метавонед онҳоро ислоҳ ё оптимизатсия кунед. Ин як таҷрибаи хеле ва хеле шавқовар аст.

Агар мо таҷрибаи ҳамгироии муттасил дошта бошем, пас ин ба мо имкон медиҳад, ки онро бо як қатор асбобҳои автоматикунонидашуда дар ин ҷо ва худи ҳозир, вақте ки ман коди худро нависам, тафтиш кунем. Ин метавонад ба ман тасвири пурра надиҳад, аммо бо вуҷуди ин, он ҳадди аққал баъзе хатарҳоро аз байн мебарад. Ва агар ягон хатогии эҳтимолӣ вуҷуд дошта бошад, ман дар ин бора худи ҳозир медонам, яъне дар як чанд дақиқа. Ба ман лозим нест, ки 3 моҳ баргардам. Ба ман лозим меояд, ки танҳо 2 дақиқа баргардам. Мошини хуби қаҳва ҳатто барои пухтан қаҳва дар 2 дақиқа вақт надорад, аз ин рӯ, хеле хуб аст.

Ин дорои арзишест, ки онро дар ҳар як лоиҳа такрор кардан мумкин аст, яъне. на танҳо он чизе, ки шумо онро танзим мекунед. Шумо метавонед ҳам худи амалияро такрор кунед ва ҳам худи CI барои ҳар як тағйироти наве, ки шумо ба лоиҳа ворид мекунед, такрор карда мешавад. Ин ба шумо имкон медиҳад, ки захираҳоро оптимизатсия кунед, зеро дастаи шумо самараноктар кор мекунад. Шумо дигар вазъияте нахоҳед дошт, ки аз коде, ки 3 моҳ пеш кор карда будед, ба шумо хатогӣ меояд. Вақте ки шумо нишастаед ва ду соати аввалро барои фаҳмидани воқеаи он вақт сарф мекунед ва пеш аз оғози ислоҳи чизе, ба моҳияти контекст ворид мешавед, дигар ивазкунии контекст нахоҳед дошт.

Муваффақият ё нокомии ин таҷрибаро чӣ гуна чен карда метавонем? Агар шумо ба раҳбари калон гузориш диҳед, ки мо дар лоиҳаи CI чӣ кор кардаем, вай бла бла бла мешунавад. Мо онро ба амал овардем, хуб, аммо барои чй ин ба мо чй овард, мо онро чй тавр чен мекунем, то чй андоза дуруст ва ё нодуруст татбик карда истодаем?

Якум ин аст, ки ба шарофати CI, мо метавонем бештар ва бештар ва дақиқтар ҷойгир кунем, зеро коди мо эҳтимолан устувортар аст. Ҳамин тавр, вақти мо барои дарёфти хато кам мешавад ва вақти ислоҳи ин хато маҳз аз он сабаб кам карда мешавад, ки мо дар ин ҷо ва худи ҳозир аз система ҷавоб мегирем, ки дар коди мо чӣ хатост.

Беҳтарин амалияҳои DevOps барои таҳиягарон. Антон Бойко (2017)

Таҷрибаи дигаре, ки мо дорем, ин таҷрибаи санҷиши автоматикунонӣ мебошад, ки аксар вақт бо таҷрибаи CI меояд. Онхо даст ба даст ме-раванд.

Дар ин ҷо фаҳмидани чӣ муҳим аст? Фаҳмидани он муҳим аст, ки санҷишҳои мо гуногунанд. Ва ҳар як санҷиши автоматӣ барои ҳалли мушкилоти худ нигаронида шудааст. Мо, масалан, санҷишҳои воҳидҳо дорем, ки ба мо имкон медиҳанд, ки модулро алоҳида санҷем, яъне. Он дар вакуум чӣ гуна кор мекунад? Ин хуб аст.

Мо инчунин санҷишҳои ҳамгироӣ дорем, ки ба мо имкон медиҳанд фаҳмем, ки чӣ тавр модулҳои гуногун бо ҳамдигар ҳамгиро мешаванд. Ин ҳам хуб аст.

Мо метавонем санҷишҳои автоматикунонии UI дошта бошем, ки ба мо имкон медиҳад тафтиш кунем, ки кор бо UI то чӣ андоза ба талаботи муайяни фармоишгар мувофиқат мекунад ва ғайра.

Санҷишҳои мушаххасе, ки шумо иҷро мекунед, метавонанд таъсир расонанд, ки шумо онҳоро чанд маротиба иҷро мекунед. Санҷишҳои воҳид одатан кӯтоҳ ва хурд навишта мешаванд. Ва онҳо метавонанд мунтазам ба кор андохта шаванд.

Агар мо дар бораи санҷишҳои автоматикунонии UI сухан ронем, он гоҳ хуб аст, ки лоиҳаи шумо хурд бошад. Санҷишҳои автоматикунонии UI-и шумо метавонанд вақти кофӣ талаб кунанд. Аммо одатан санҷиши автоматикунонии UI чизест, ки дар як лоиҳаи калон чанд соат вақт мегирад. Ва ин хуб аст, агар он чанд соат бошад. Ягона чиз дар он аст, ки барои ҳар як сохтмон идора кардани онҳо маъно надорад. Онҳоро шабона идора кардан маъно дорад. Ва ҳангоме ки ҳама саҳар ба кор омаданд: ҳам озмоишгарон ва ҳам таҳиягарон, онҳо як навъ гузориш гирифтанд, ки мо шабона худтест UI-ро гузаронидаем ва ин натиҷаҳоро ба даст овардем. Ва дар ин ҷо, як соати кори сервере, ки тафтиш мекунад, ки маҳсулоти шумо ба баъзе талаботҳо мувофиқат мекунад, назар ба як соати кори ҳамон як муҳандиси QA хеле арзонтар хоҳад буд, ҳатто агар он як муҳандиси хурди QA бошад, ки барои ғизо ва ташаккур кор мекунад. Ба хар хол як соати кори дастгох арзон мешавад. Аз ин рӯ, ба он сармоягузорӣ кардан маъно дорад.

Ман як лоиҳаи дигаре дорам, ки дар он кор мекардам. Мо дар ин лоиҳа спринтҳои дуҳафтаина доштем. Лоиҳа калон буд, барои бахши молиявӣ муҳим буд ва ба хатогӣ роҳ додан мумкин набуд. Ва пас аз як спринти дуҳафтаина, давраи рушд бо раванди санҷиш идома ёфт, ки 4 ҳафтаи дигарро дар бар гирифт. Кӯшиш кунед, ки миқёси фоҷиаро тасаввур кунед. Мо дар тӯли ду ҳафта код менависем, пас онро ала CodeFreeze мекунем, онро ба версияи нави барнома бастабандӣ мекунем ва онро ба озмоишгарон паҳн мекунем. Озмоишгарон онро барои 4 ҳафтаи дигар месанҷанд, яъне. Ҳангоме ки онҳо онро озмоиш мекунанд, мо вақт дорем, ки ду версияи дигарро барои онҳо омода созем. Ин воқеан ғамгин аст.

Ва мо ба онҳо гуфтем, ки агар шумо хоҳед, ки самараноктар бошед, барои шумо татбиқ кардани таҷрибаҳои Санҷиши автоматӣ маъно дорад, зеро маҳз ҳамон чизест, ки дар ин ҷо ба шумо осеб мерасонад.

Беҳтарин амалияҳои DevOps барои таҳиягарон. Антон Бойко (2017)

Ҷойгиркунии доимиро машқ кунед. Аҷоиб, шумо сохтмонро анҷом додед. Ин аллакай хуб аст. Рамзи шумо тартиб дода шудааст. Акнун хуб мебуд, ки ин биноро дар ягон муҳити зист ҷойгир кунем. Биёед дар муҳити барои таҳиягарон мегӯянд.

Чаро муҳим аст? Аввалан, шумо метавонед бубинед, ки то чӣ андоза шумо бо худи раванди ҷойгиркунӣ муваффақ ҳастед. Ман бо чунин лоиҳаҳо вохӯрдам, вақте ки ман мепурсам: "Шумо версияи нави барномаро чӣ гуна ҷойгир мекунед?", бачаҳо ба ман мегӯянд: "Мо онро ҷамъ карда, дар архиви ZIP ҷойгир мекунем. Мо онро ба администратор тавассути почта мефиристем. Администратор ин архивро зеркашӣ ва васеъ мекунад. Ва тамоми офис ба дуо оғоз мекунад, ки сервер версияи навро интихоб кунад. ”

Биёед бо чизи оддӣ оғоз кунем. Масалан, онҳо гузоштани CSS-ро дар бойгонӣ фаромӯш карданд ё тағир додани хэштегро дар номи файли java-скрипт фаромӯш карданд. Ва вақте ки мо ба сервер дархост пешниҳод мекунем, браузер фикр мекунад, ки он аллакай ин файли java-скриптро дорад ва тасмим мегирад, ки онро зеркашӣ намекунад. Ва версияи кӯҳна вуҷуд дошт, чизе намерасид. Умуман, метавонад мушкилоти зиёде бошад. Аз ин рӯ, таҷрибаи ҷобаҷогузории доимӣ ба шумо имкон медиҳад, ки ҳадди аққал санҷед, ки агар шумо тасвири истинодро тоза гирифта, онро ба муҳити комилан тоза бор кунед, чӣ мешавад. Шумо мебинед, ки ин ба куҷо мебарад.

Инчунин, вақте ки шумо кодро байни ҳамдигар муттаҳид мекунед, яъне. байни фармон, ин ба шумо имкон медиҳад, ки низ бинед, ки чӣ тавр он дар UI назар.

Яке аз мушкилоте, ки дар он ҷое, ки миқдори зиёди java-скрипти ванилӣ истифода мешавад, ин аст, ки ду таҳиягар бесаброна тағирёбандаро бо ҳамон ном дар объекти равзана эълон карданд. Ва он гоҳ, вобаста ба барори шумо. Касе, ки файли java-скрипти он сония бароварда мешавад, тағироти дигареро аз нав сабт мекунад. Ин ҳам хеле ҳаяҷоновар аст. Шумо дароед: як чиз барои як кас кор мекунад, чизи дигаре барои каси дигар кор намекунад. Ва ин «аҷоиб» аст, вақте ки ҳама дар истеҳсолот мебароянд.

Беҳтарин амалияҳои DevOps барои таҳиягарон. Антон Бойко (2017)

Таҷрибаи навбатӣ, ки мо дорем, ин амалияи барқарорсозии худкор, яъне бозгашт ба версияи қаблии барнома мебошад.

Чаро ин барои таҳиягарон муҳим аст? Ҳанӯз ҳам касоне ҳастанд, ки солҳои дуру дури 90-ро ба ёд меоранд, ки компютерҳо калон буданду барномаҳо хурд буданд. Ва ягона роҳи рушди веб тавассути PHP буд. Ин маънои онро надорад, ки PHP забони бад аст, гарчанде ки ин аст.

Аммо масъала дигар буд. Вақте ки мо версияи нави сайти php-и худро ҷойгир кардем, мо онро чӣ гуна ҷойгир кардем? Аксар вақт мо Фар Менеҷер ё чизи дигарро кушодем. Ва ин файлҳоро ба FTP бор кард. Ва мо ногаҳон фаҳмидем, ки мо ягон иштибоҳи хурду хурде дорем, масалан, гузоштани нуқта-вергулро фаромӯш кардаем ё иваз кардани пароли базаи маълумотро фаромӯш кардаем ва парол барои базаи маълумот мавҷуд аст, ки дар мизбони маҳаллӣ аст. Ва мо тасмим гирифтем, ки зуд ба FTP пайваст шавем ва файлҳоро дар ҳамон ҷо таҳрир кунем. Ин танҳо оташ аст! Ин аст он чизе ки дар солҳои 90-ум маъмул буд.

Аммо, агар шумо ба тақвим нигоҳ накарда бошед, солҳои 90-ум тақрибан 30 сол пеш буд. Ҳоло ҳама чиз каме дигар мешавад. Ва кӯшиш кунед, ки миқёси фоҷиаро тасаввур кунед, вақте ки онҳо ба шумо мегӯянд: «Мо ба истеҳсолот сафарбар кардем, аммо дар он ҷо чизе хато кард. Ин аст логин ва пароли FTP-и шумо, ба истеҳсолот пайваст шавед ва онро зуд ислоҳ кунед." Агар шумо Чак Норрис бошед, ин кор хоҳад кард. Дар акси ҳол, шумо хавфи онро доред, ки агар шумо як хатогиро ислоҳ кунед, боз 10 хато мекунед.. Маҳз барои ҳамин ин амалияи бозгашт ба версияи қаблӣ ба шумо имкон медиҳад, ки бисёр чизҳоро ба даст оред.

Ҳатто агар ягон чизи бад дар ҷое ба вуҷуд ояд, он бад аст, аммо марговар нест. Шумо метавонед ба версияи қаблии худ баргардед. Онро нусхабардорӣ кунед, агар дарк кардани он дар ин истилоҳот осонтар бошад. Шумо метавонед ба ин версияи қаблӣ баргардед ва корбарон метавонанд бо маҳсулоти шумо кор кунанд ва шумо вақти муносиби буферӣ хоҳед дошт. Шумо метавонед оромона, бидуни шитоб, ҳамаи инро гиред ва онро ба таври маҳаллӣ санҷед, ислоҳ кунед ва сипас версияи навро бор кунед. Ин воқеан маъно дорад.

Беҳтарин амалияҳои DevOps барои таҳиягарон. Антон Бойко (2017)

Акнун биёед кӯшиш кунем, ки ду таҷрибаи қаблиро бо ҳам якҷоя кунем. Мо сеюмро бо номи Идоракунии Release мегирем.

Вақте ки мо дар бораи Ҷойгиркунии доимӣ дар шакли классикии он сухан меронем, мо мегӯем, ки мо бояд кодро аз ягон филиал аз анбор кашем, онро тартиб диҳем ва ҷойгир кунем. Хуб аст, ки агар мо як муҳити зист дошта бошем. Агар мо якчанд муҳит дошта бошем, ин маънои онро дорад, ки мо бояд ҳар дафъа рамзро, ҳатто аз як ӯҳдадорӣ кашем. Мо онро ҳар дафъа берун хоҳем кард, мо онро ҳар дафъа месозем ва онро дар муҳити нав ҷойгир мекунем. Аввалан, ин вақт аст, зеро барои сохтани лоиҳа, агар шумо лоиҳаи калон дошта бошед ва аз солҳои 90-ум омада бошед, он метавонад якчанд соатро дар бар гирад.

Ба гайр аз ин боз як андухгини дигар. Вақте ки шумо ҳатто дар як мошин месозед, шумо ҳамон манбаъҳоро месозед, шумо то ҳол кафолат намедиҳед, ки ин мошин дар ҳамон ҳолате, ки дар давраи охирин сохта шуда буд, қарор дорад.

Фарз мекунем, ки касе ворид шуд ва DotNet-ро барои шумо навсозӣ кард ё баръакс, касе тасмим гирифт, ки чизеро нест кунад. Ва он гоҳ шумо диссонанси маърифатӣ доред, ки аз ин ӯҳдадорӣ ду ҳафта пеш мо як сохтмон месозем ва ҳама чиз хуб буд, аммо ҳоло ба назар чунин менамояд, ки ҳамон мошин, ҳамон ӯҳдадорӣ, ҳамон коде, ки мо барои сохтани он кӯшиш мекунем, аммо он кор намекунад . Шумо бо ин муддати тӯлонӣ сарукор хоҳед кард ва ин далел нест, ки шумо инро мефаҳмед. Ақаллан асабҳоятонро бисёр вайрон мекунед.

Аз ин рӯ, таҷрибаи идоракунии нашрия пешниҳод мекунад, ки абстраксияи иловагӣ бо номи анбори артефакт ё галерея ё китобхона пешниҳод карда шавад. Шумо метавонед онро ҳар чӣ мехоҳед, даъват кунед.

Идеяи асосӣ ин аст, ки вақте ки мо дар он ҷо як навъ ӯҳдадорӣ дорем, масалан, дар филиале, ки мо омодаем дар муҳити мухталифи худ ҷойгир кунем, мо аз ин ӯҳдадорӣ дархостҳо ҷамъоварӣ мекунем ва ҳама чизеро, ки барои ин барнома лозим аст, ҷамъ мекунем. ба бойгонии zip гузоред ва онро дар анбори боэътимод захира кунед. Ва аз ин анбор мо метавонем ин бойгонии zip-ро дар вақти дилхоҳ ба даст орем.

Сипас мо онро мегирем ва ба таври худкор онро дар муҳити dev ҷойгир мекунем. Мо дар он ҷо мусобиқа мекунем ва агар ҳама чиз хуб бошад, мо ба саҳна мебароем. Агар ҳамааш хуб бошад, пас мо ҳамон архивро дар истеҳсолот ҷойгир мекунем, ҳамон бинарҳо, ки маҳз як маротиба тартиб дода шудаанд.

Илова бар ин, вақте ки мо галереяи монанди ин дорем, он инчунин ба мо кӯмак мекунад, ки хатарҳоеро ҳал кунем, ки дар слайди охирин ҳангоми бозгашт ба версияи қаблӣ сӯҳбат кардем. Агар шумо тасодуфан ягон чизи нодурустро ҷойгир карда бошед, шумо ҳамеша метавонед аз ин галерея ягон версияи қаблии дигарро гиред ва онро дар ин муҳитҳо ба ҳамин тариқ бекор кунед. Ин ба шумо имкон медиҳад, ки ба осонӣ ба версияи қаблӣ баргардед, агар чизе хато кунад.

Беҳтарин амалияҳои DevOps барои таҳиягарон. Антон Бойко (2017)

Боз як таҷрибаи бузург вуҷуд дорад. Мо ва шумо ҳама мефаҳмем, ки вақте ки мо замимаҳои худро ба версияи қаблӣ бармегардонем, ин метавонад маънои онро дошта бошад, ки мо инчунин ба инфрасохтори версияи қаблӣ ниёз дорем.

Вақте ки мо дар бораи инфрасохтори виртуалӣ гап мезанем, бисёриҳо фикр мекунанд, ки ин чизест, ки маъмурон муқаррар кардааст. Ва агар ба шумо, масалан, барои гирифтани сервери нав лозим аст, ки дар он шумо версияи нави замимаи худро санҷед, шумо бояд ба маъмурон ё devops чипта нависед. Девопҳо барои ин 3 ҳафта вақт мегиранд. Ва пас аз 3 ҳафта онҳо ба шумо хоҳанд гуфт, ки мо барои шумо як мошини маҷозӣ насб кардем, ки дорои як ядро, ду гигабайт RAM ва сервери Windows бе DotNet мебошад. Шумо мегӯед: "Аммо ман DotNet мехостам." Онҳо: "Хуб, пас аз 3 ҳафта бармегардед."

Идеяи он аст, ки бо истифода аз инфрасохтор ҳамчун амалияи Кодекс, шумо метавонед инфрасохтори виртуалии худро ҳамчун манбаи дигар баррасӣ кунед.

Эҳтимол, агар касе аз шумо дар DotNet барномаҳо таҳия карда бошед, шумо шояд дар бораи китобхонае бо номи Entity Framework шунидаед. Ва шумо шояд ҳатто шунидаед, ки Entity Framework яке аз равишҳое мебошад, ки Microsoft фаъолона пеш мебарад. Барои кор бо пойгоҳи додаҳо, ин равиш бо номи Code First аст. Ин вақтест, ки шумо бо код тавсиф мекунед, ки шумо мехоҳед пойгоҳи додаи худро ба назар гиред. Ва он гоҳ шумо барномаро ҷойгир мекунед. Он ба базаи маълумот пайваст мешавад, худаш муайян мекунад, ки кадом ҷадвалҳо мавҷуданд ва кадом ҷадвалҳо нестанд ва ҳама чизеро, ки ба шумо лозим аст, эҷод мекунад.

Шумо метавонед ин корро бо инфрасохтори худ кунед. Фарқе нест, ки оё ба шумо барои лоиҳа пойгоҳи додаҳо лозим аст ё барои лоиҳа сервери Windows лозим аст. Ин танҳо як захира аст. Ва шумо метавонед эҷоди ин захираро автоматӣ кунед, шумо метавонед конфигуратсияи ин манбаъро автоматӣ кунед. Ҳамин тариқ, ҳар дафъае, ки шумо мехоҳед ягон консепсияи нав, равиши навро санҷед, ба шумо лозим нест, ки чипта ба devops нависед, шумо метавонед танҳо як инфрасохтори ҷудошударо барои худ аз қолабҳои тайёр, аз скриптҳои омода ҷойгир кунед ва онро амалӣ кунед. дар он ҷо ҳама таҷрибаҳои шумо. Шумо метавонед инро нест кунед, баъзе натиҷаҳоро ба даст оред ва дар бораи он гузориш диҳед.

Беҳтарин амалияҳои DevOps барои таҳиягарон. Антон Бойко (2017)

Таҷрибаи навбатӣ, ки он низ вуҷуд дорад ва муҳим аст, аммо аз он кам одамон истифода мебаранд, Мониторинги иҷрои барномаҳо мебошад.

Ман мехостам танҳо як чизро дар бораи мониторинги иҷрои барнома бигӯям. Дар ин таҷриба чӣ муҳимтар аст? Ин аст он чизе, ки Мониторинги иҷрои барномаҳо тақрибан ба таъмири квартира монанд аст. Ин ҳолати ниҳоӣ нест, ин раванд аст. Шумо бояд онро мунтазам иҷро кунед.

Ба таври хуб, хуб мебуд, ки Мониторинги иҷрои барномаҳоро тақрибан дар ҳар як сохтмон анҷом диҳед, гарчанде ки шумо мефаҳмед, ин на ҳамеша имконпазир аст. Аммо, ҳадди аққал, он бояд барои ҳар як нашр анҷом дода шавад.

Чаро муҳим аст? Зеро, агар шумо ногаҳон паст шудани нишондиҳандаҳоро эҳсос кунед, пас шумо бояд равшан фаҳмед, ки чаро. Агар дастаи шумо, масалан, спринтҳои дуҳафтаина дошта бошад, пас ҳадди аққал як маротиба дар ду ҳафта шумо бояд барномаи худро дар ягон сервери алоҳида ҷойгир кунед, ки дар он шумо протсессори равшан, хотираи оперативӣ, дискҳо ва ғайра доред. . Шумо натиҷа мегиред. Бубинед, ки он аз спринти қаблӣ чӣ гуна тағйир ёфтааст.

Ва агар шумо фаҳмед, ки коҳиш дар ҷое якбора поин рафтааст, ин маънои онро дорад, ки ин танҳо ба сабаби тағиротҳое, ки дар тӯли ду ҳафтаи охир ба амал омадаанд. Ин ба шумо имкон медиҳад, ки мушкилотро зудтар муайян кунед ва ислоҳ кунед. Ва боз, инҳо тақрибан ҳамон ченакҳо мебошанд, ки шумо метавонед онро бомуваффақият чен кунед.

Беҳтарин амалияҳои DevOps барои таҳиягарон. Антон Бойко (2017)

Таҷрибаи навбатии мо таҷрибаи идоракунии конфигуратсия мебошад. Хеле каманд, ки инро ҷиддӣ қабул мекунанд. Аммо ба ман бовар кунед, ки ин воқеан як чизи хеле ҷиддӣ аст.

Ба наздикӣ як ҳикояи хандоваре рӯй дод. Бачаҳо назди ман омада гуфтанд: "Ба мо кӯмак кунед, ки санҷиши амниятии аризаамонро гузаронед." Мо муддати дароз якчоя кодро аз назар гузарондем, дар бораи ариза накл карданд, диаграммахо кашиданд. Ва плюс ё минус ҳама чиз мантиқӣ, фаҳмо, бехатар буд, аммо як буд ВАЛЕ! Онҳо дар назорати манбаи худ файлҳои конфигуратсияро доштанд, аз ҷумла файлҳои истеҳсолӣ бо пойгоҳи додаҳои IP, бо логинҳо ва паролҳо барои пайвастшавӣ ба ин пойгоҳи додаҳо ва ғайра.

Ва ман мегӯям: "Бачаҳо, хуб, шумо муҳити истеҳсолии худро бо брандмауэр бастаед, аммо далели он, ки шумо логин ва пароли махзани истеҳсолиро дар идоракунии манбаъ доред ва ҳар як таҳиягар онро хонда метавонад, аллакай як хатари бузурги амният аст. . Ва новобаста аз он ки аризаи шумо аз нуқтаи назари код то чӣ андоза бехатар аст, агар шумо онро дар назорати манбаъ гузоред, шумо ҳеҷ гоҳ ягон аудитро дар ҳеҷ ҷо нагузаронед." Ман дар ин бора гап мезанам.

Идоракунии конфигуратсия. Мо метавонем дар муҳитҳои гуногун конфигуратсияҳои гуногун дошта бошем. Масалан, мо метавонем логинҳо ва паролҳои гуногун барои пойгоҳи додаҳо барои QA, намоишӣ, муҳити истеҳсолӣ ва ғайра дошта бошем.

Ин конфигуратсияро низ автоматӣ кардан мумкин аст. Он бояд ҳамеша аз худи барнома ҷудо бошад. Чаро? Азбаски шумо барномаро як бор сохтаед ва он гоҳ барнома парвое надорад, ки шумо ба сервери SQL тавассути фалон IP ё фалон IP пайваст мешавед, он бояд ҳамин тавр кор кунад. Аз ин рӯ, агар ногаҳон яке аз шумо то ҳол сатри пайвастшавӣ дар кодро сахт рамзгузорӣ кунад, пас дар хотир доред, ки ман шуморо меёбам ва агар шумо худро дар як лоиҳа бо ман пайдо кунед, шуморо ҷазо медиҳам. Он ҳамеша дар конфигуратсияи алоҳида ҷойгир карда мешавад, масалан, дар web.config.

Ва ин конфигуратсия аллакай алоҳида идора карда мешавад, яъне маҳз ҳамин лаҳзаест, ки таҳиягар ва администратор метавонанд дар як ҳуҷра омада нишинанд. Ва таҳиякунанда метавонад бигӯяд: "Инак, ин ҷо дуликҳои барномаи ман ҳастанд. Онхо кор мекунанд. Барои кор кардан ба барнома базаи маълумот лозим аст. Дар ин ҷо дар паҳлӯи бинарҳо файл мавҷуд аст. Дар ин файл, ин майдон барои воридшавӣ масъул аст, ин барои парол, ин барои IP аст. Онро дар ҳама ҷо ҷойгир кунед." Ва он барои администратор оддӣ ва равшан аст. Вай метавонад бо идоракунии ин конфигуратсия онро воқеан дар ҳама ҷо ҷойгир кунад.

Беҳтарин амалияҳои DevOps барои таҳиягарон. Антон Бойко (2017)

Ва охирин амале, ки ман мехостам дар бораи он сухан гӯям, амалияест, ки бо абрҳо хеле ва хеле алоқаманд аст. Ва он самараи максималӣ меорад, агар шумо дар абр кор кунед. Ин нест кардани худкори муҳити шумост.

Ман медонам, ки дар ин конфронс аз дастаҳое, ки ман бо онҳо кор мекунам, чанд нафар ҳастанд. Ва бо ҳамаи дастаҳое, ки ман бо онҳо кор мекунам, мо аз ин таҷриба истифода мебарем.

Чаро? Албатта, хеле хуб мебуд, агар ҳар як таҳиякунанда мошини виртуалӣ дошта бошад, ки 24/7 кор мекунад. Аммо шояд ин барои шумо хабар бошад, шояд шумо аҳамият надодаед, аммо худи таҳиякунанда 24/7 кор намекунад. Таҳиягар одатан дар як рӯз 8 соат кор мекунад. Ҳатто агар ӯ барвақт ба кор ояд, ӯ хӯроки нисфирӯзии калон дорад, ки дар давоми он ба толори варзиш меравад. Бигзор он 12 соат дар як рӯз бошад, вақте ки таҳиякунанда воқеан ин захираҳоро истифода мебарад. Тибқи қонунгузории мо, мо дар як ҳафта аз 5 рӯз 7 рӯз дорем, ки рӯзи корӣ ҳисобида мешаванд.

Мувофики он дар рузхои истирохат ин машина бояд 24 соат не, балки танхо 12 соат кор кунад, дар рузхои истирохат бошад, ин машина тамоман кор накунад. Чунин ба назар мерасад, ки ҳама чиз хеле содда аст, аммо дар ин ҷо чӣ гуфтан муҳим аст? Бо татбиқи ин амалияи оддӣ дар ин ҷадвали асосӣ, он ба шумо имкон медиҳад, ки хароҷоти нигоҳдории ин муҳитҳоро 70% кам кунед, яъне шумо нархи таҳиягар, QA, намоишӣ, муҳити худро гирифта, онро ба 3 тақсим кардед.

Саволе ба миён меояд, ки боқимондаи пулро чӣ бояд кард? Масалан, таҳиягарон бояд ReSharper -ро харидорӣ кунанд, агар онҳо аллакай надошта бошанд. Ё як зиёфати коктейл доред. Агар шумо қаблан як муҳит дошта бошед, ки дар он ҳам таҳиягар ва ҳам QA чаронда буданд ва ин аст, акнун шумо метавонед 3 муҳити гуногунро созед, ки ҷудо карда мешаванд ва одамон ба ҳамдигар халал намерасонанд.

Беҳтарин амалияҳои DevOps барои таҳиягарон. Антон Бойко (2017)

Дар мавриди слайд бо андозагирии пайвастаи иҷроиш, чӣ гуна мо метавонем корҳоро муқоиса кунем, агар мо дар пойгоҳи додаҳо дар лоиҳа 1 сабт дошта бошем, пас аз ду моҳ як миллион вуҷуд дорад? Чӣ тавр фаҳмидан мумкин аст, ки чаро ва нуқтаи ченкунии самаранокӣ чист?

Ин саволи хуб аст, зеро шумо бояд ҳамеша корҳоро дар ҳамон захираҳо чен кунед. Ин аст, ки шумо рамзи навро мебароред, шумо иҷрои рамзи навро чен мекунед. Масалан, шумо бояд сенарияҳои гуногуни иҷроишро санҷед, бигӯед, ки шумо мехоҳед бисанҷед, ки чӣ гуна барнома дар бори сабук кор мекунад, дар он ҷо 1 корбар ва андозаи пойгоҳи додаҳо 000 гигабайт аст. Шумо онро чен карда, рақамҳоро гирифтед. Минбаъд мо сенарияи дигарро мегирем. Масалан, 5 корбар, андозаи пойгоҳи додаҳо 5 терабайт. Мо натицахоро гирифтем ва ба хотир овардем.

Дар ин ҷо чӣ муҳим аст? Дар ин ҷо чизи муҳим он аст, ки вобаста ба сенария, ҳаҷми маълумот, шумораи корбарони ҳамзамон ва ғайра, шумо метавонед ба маҳдудиятҳои муайян ворид шавед. Масалан, то ҳадди ниҳоии корти шабакавӣ, ё ба лимити диски сахт ё ба ҳадди имкони протсессор. Ин барои шумо муҳим аст, ки фаҳмед. Дар сенарияҳои гуногун шумо ба маҳдудиятҳои муайян дучор мешавед. Ва шумо бояд рақамҳоро ҳангоми задани онҳо бифаҳмед.

Оё мо дар бораи чен кардани кор дар муҳити махсуси санҷишӣ гап мезанем? Яъне ин истеҳсолот нест?

Бале, ин истеҳсолот нест, ин муҳити санҷишӣ аст, ки ҳамеша якхела аст, то шумо онро бо андозагирии қаблӣ муқоиса кунед.

Фаҳмидам ташаккур!

Агар ягон савол набошад, ман фикр мекунам, ки мо метавонем анҷом диҳем. Сипос!

Манбаъ: will.com

Илова Эзоҳ