ДевОпс сценарији у стварном времену - знајте шта се дешава у реалном времену



Овај блог говори о сценаријима ДевОпс-а у стварном времену који ће вам помоћи да разумете изазове са којима се можете суочити у реалном времену и како их превазићи.

Многи од вас можда знају све теорије у вези са њима . Али да ли знате како да примените ДевОпс принципе у стварном животу? На овом блогу ћу разговарати о сценаријима ДевОпс у реалном времену који ће вам помоћи да стекнете кратко разумевање како ствари функционишу у реалном времену.

Напутци које ћу у овоме покритиЧланак ДевОпс сценарија у стварном временусу:





Почнимо са нашом првом темом.

Шта је ДевОпс?

девопс-девопс сценарији у стварном времену-ЕдурекаДевОпс је приступ развоју софтвера који укључује континуирани развој, континуирано тестирање, континуирану интеграцију, континуирано постављање и континуирано надгледање софтвера током његовог животног циклуса развоја. Ове активности су могуће само у ДевОпс-у, а не у агилном или водопаду. Због тога су Фацебоок и друге водеће компаније одабрале ДевОпс као пут напред за своје пословне циљеве.ДевОпс је углавном пожељан за развој висококвалитетног софтвера у краћим развојним циклусима што резултира већим задовољством купаца.



У следећем одељку овогаУ чланку ДевОпс сценарији у стварном времену, погледаћемо разне проблеме које је решио ДевОпс.

Проблеме које је решио ДевОпс

1. Доставите вредност купцима

  • ДевОпс минимализује време потребно је за испоручивање вредности купцима. Време циклуса од програмера до завршетка приче / задатка до производње знатно се смањује, омогућавајући вредност да се оствари што је брже могуће.
  • Најважнија вредност остварена кроз ДевОпс је та што омогућава ИТ организацијама усредсредити се на њихове „основне“ пословне активности . Уклањањем ограничења унутар тока вредности и аутоматизацијом цевовода за примену, тимови се могу усредсредити на активности. Ово помаже у стварању корисничке вредности, а не само померању битова и бајтова. Ове активности повећавају одрживу конкурентску предност предузећа и стварају боље пословне резултате.



2. Смањено време циклуса

  • Интерно ДевОпс је једини начин да се постигне окретност за испоруку сигурног кода са увидима. Важно је имати капије и добро осмишљен ДевОпс процес. Када испоручујете нову верзију, она може да се покреће упоредо са тренутном верзијом. Такође можете да упоредите метрику да бисте постигли оно што сте желели са метриком примене и перформанси.

  • ДевОпс воде развојне тимове ка континуирано побољшање и бржи циклуси ослобађања . Ако се добро уради, овај итеративни поступак омогућава временски већи фокус на ствари које су заиста битне. Као што су ствари које корисницима стварају сјајна искуства - и мање времена за управљање алатима, процесима и технологијом.

3. Време за тржиште

Најважнији проблем који се решава је смањење сложености процеса. Ово значајно доприноси нашем пословном успеху скраћујући наше време на тржишту, пружајући нам брзе повратне информације о карактеристикама и чинећи нас одговорнијим на потребе наших купаца.

табела података мешање лево спајање

4. Решавање проблема

  • Највећа вредност успешне примене ДевОпс-а је веће поверење у испоруку, видљивост и следљивост онога што се догађа, тако да можете брже решавати проблеме.

  • Још једна важна предност ДевОпс-а је губљење времена. Усклађивање људи и ресурса организације омогућава брзо постављање и ажурирање. То омогућава програмима ДевОпс да реше проблеме пре него што се претворе у катастрофе.ДевОпс ствара културу транспарентности која промовише фокус и сарадњу између развојних, оперативних и безбедносних тимова.

ЦИ (Континуирана интеграција) уДевОпс сценарији у стварном времену

1. Појединци могу видети континуирану интеграцију контрапродуктивном

Чланови развојног тима имају различите улоге, одговорности и приоритете. Могуће је да је приоритет менаџера производа можда лансирање нових функција, а менаџер пројекта мора бити сигуран да њихов тим поштује рок. Програмери би могли помислити да ће их успорити ако престану да исправе мању грешку сваки пут када се догоди. Могли би сматрати да им одржавање зграде представља додатни терет и неће им бити од користи због њихових додатних напора. Ово потенцијално може угрозити процес адаптације.

Да бисте ово превазишли:

  • Прво, проверите да ли је цео ваш тим на броду пре него што усвојите континуирану интеграцију.

  • Технички директори и вође тимова морају да помогну члановима тима да схвате трошкове и користи континуиране интеграције.

  • Истакните шта ће и када кодери имати користи тако што ће се посветити другом начину рада који захтева мало више отворености и флексибилности.

2. Интегрисање ЦИ у ваш постојећи развојни ток

Усвајање ЦИ неизбежно долази са потребом да се суштински промене неки делови вашег развојног процеса. Могуће је да програмери можда неће поправити ток посла ако није неисправан. То је могуће углавном ако ваш тим има већу рутину у извршавању свог тренутног тока посла.

Ако желите да промените ток рада, то морате да урадите уз велике мере предострожности. У супротном, то би могло угрозити продуктивност развојног тима, а такође и квалитет производа. Без довољне подршке руководства, развојни тим можда помало нерадо преузима задатак са таквим ризицима.

Да бисте ово превазишли:

  • Морате бити сигурни да ћете дати довољно времена свом тиму да развије свој нови ток рада. То се ради како би се изабрало флексибилно решење за континуирану интеграцију које може подржати њихов нови ток рада.

  • Такође, осигурајте им да компанија има леђа чак и ако на почетку ствари можда неће ићи баш глатко.

3. Враћање у некадашње навике тестирања

Непосредни ефекат усвајања континуиране интеграције је да ће ваш тим чешће тестирати. Дакле, за више тестова биће потребно више тест случајева, а писање тест случајева може потрајати. Стога програмери често морају да поделе време између поправљања грешака и писања тест случајева.

Привремено, програмери могу ручним тестирањем уштедети време, али би дугорочно могло више наштетити. Што више одуговлаче са писањем тест случајева, то ће бити теже надокнадити напредак развоја. У најгорем случају, ваш тим би се на крају могао вратити свом старом процесу тестирања.

Да бисте ово превазишли:

  • Морате нагласити да би писање тест случајева од почетка могло уштедети пуно времена за ваш тим и обезбедити високу покривеност вашег производа тестом.

  • Такође, уградите идеју у културу компаније да су примери тестова једнако вредни као и сама кодна база.

4. Програмери који игноришу поруке о грешкама

Чест је проблем да када већи тимови раде заједно, количина ЦИ обавештења постаје огромна и програмери почињу да их игноришу и пригушују. Стога је могуће да пропусте ажурирања која су за њих релевантна.

То може довести до фазе у којој кодери развијају релативни имунитет на сломљене верзије и поруке о грешкама. Што дуже игноришу релевантна обавештења, то се дуже развијају без повратних информација у погрешном смеру. То би потенцијално могло проузроковати огромна враћања, расипање новца, ресурса и времена.

Да бисте ово превазишли:

  • Треба да шаљете само критична ажурирања.

  • Обавештење шаљите само одговарајућим програмерима који су задужени да га исправе.

ЦТ (континуирано тестирање) уДевОпс сценарији у стварном времену

  1. Добијање тачне спецификације захтева

    Ако правилно постигнете своје захтеве, тада је добијена скоро половина битке. Дакле, ако имате врло специфично и тачно разумевање захтева, можете боље дизајнирати планове испитивања и добро покрити захтеве.

    Ипак, многи тимови троше много времена и труда једноставно разјашњавајући захтеве. Ово је врло честа замка и да би то избегли, тимови могу усвојити тестирање засновано на моделу и технике засноване на понашању. Ово помаже у тачном и адекватном дизајнирању сценарија испитивања.

    Ове праксе ће дефинитивно помоћи бржем отклањању и решавању празнина. Такође, омогућава им да аутоматски генеришу више тест случајева већ у раним фазама спринта.

  2. Оркестрација цевовода

    Предности континуираног испитивања и континуирана испорука уско су повезане са оркестрацијом цевовода. То директно значи разумевање како то функционише, зашто функционише, како анализирати резултате и како и када скалирати. Све зависи од цевовода и зато морате да интегришете цевовод са пакетом аутоматизације.

    Али разлог зашто се тимови петљају је тај што ниједно решење не пружа комплетан ланац алата који је потребан за изградњу ЦД цевовода.

    баци дупло на инт јава

    Тимови обично морају да траже делове слагалице који су тачни за њих. Не постоје савршени алати, обично само најквалитетнији алати који пружају интеграције заједно са више других алата. И наравно, АПИ који омогућава и лаку интеграцију.

    Укратко, немогуће је спровести континуирано испитивање без брзине и поузданости стандардизованог и аутоматизованог цевовода.

  3. Скалирање и управљање сложеношћу

    Други важан сценарио је да континуирано тестирање постаје сложеније како се креће ка производном окружењу. Бројеви тестова расту, као и сложеност, а код сазревања и окружење постају све сложенији.

    Морате ажурирати тестове сваки пут када ажурирате различите фазе и аутоматизоване скрипте. Као резултат, укупно време потребно за покретање тестова такође се повећава према издању.

    Решење за ово лежи у побољшаној оркестрацији теста која пружа праву количину покривености тестом у краћим циклусима спринта и омогућава тимовима да самопоуздано раде. У идеалном случају, читав процес мора бити аутоматизован ЦТ-ом који се изводи у различитим фазама. То се постиже коришћењем капија за политике и ручном интервенцијом, све док се код не потисне у производњу.

  4. Стварање петљи повратних информација

    Без честих петљи повратних информација у свакој фази развојног циклуса, континуирано тестирање није могуће. То је делимично разлог зашто је ЦТ тешко применити. Не требају вам само аутоматизовани тестови, већ вам је потребна и видљивост резултата и извршења тестова.

    Традиционалне петље повратних информација попут алата за евидентирање, провајдера кода и алата за праћење учинка више нису ефикасне. Нити раде заједно нити пружају дубину увида потребног за решавање проблема. Контролне табле у реалном времену које аутоматски генеришу извештаје и повратне информације које се могу применити у читавом СДЛЦ-у помажу бржем пуштању софтвера у производњу са мањим недостацима. Приступ контролним плочама у реалном времену и приступ свим члановима тима помажу у континуираном механизму повратних информација.

  5. Недостатак окружења

    Континуирано тестирање једноставно значи чешће тестирање, а то захтева чешће погађање више окружења. Ово представља уско грло ако наведена окружења нису доступна у тренутку када су потребна. Нека окружења су доступна преко АПИ-ја, а нека преко различитих интерфејса. Нека од ових окружења могу се градити користећи модерну архитектуру, док друга са монолитним старом верзијом клијента / сервера или маинфраме система.

    Али овде је питање како координирати тестирање путем различитих власника животне средине? Такође је могуће да они можда неће увек одржавати окружење у погону. Одговор на све ово је Виртуелизација . Виртуелизујући окружење, можете да тестирате код без превише бриге око подручја која су непроменљива.Учинити окружења доступним и доступним на захтев путем виртуелизације сигурно помаже у уклањању значајних уских грла из цевовода.

ЦД (континуирана испорука) уДевОпс сценарији у стварном времену

  1. Примене предуго трају

    Дистрибуиране апликације обично захтевају више од „копирања и лепљења“ датотека на сервер. Сложеност има тенденцију да се повећава ако имате фарму сервера. Неизвесност око тога шта да примени, где и како је прилично нормална ствар. Резултат? Дуга времена чекања да одведемо наше артефакте у следеће окружење руте до одлагања свега, тестирања, времена за живот итд.

    Шта ДевОпс доноси на сто? Развојни и ИТ оперативни тимови дефинишу процес примене у беспрекорној сесији сарадње. Прво провере шта функционише, а затим га аутоматизацијом подигну на следећи ниво како би олакшали континуирану испоруку. Ово драстично смањује време за распоређивање, а такође отвара пут и за чешћа примена.

  2. Недостају артефакти, скрипте и друге зависности

    Често наилазимо на грешке након примене нове верзије радног софтвера. То је често узроковано недостајањем библиотека или скрипти базе података које се не ажурирају. Ово је обично узроковано недостатком јасности око зависности које треба применити и њихове локације. Подстицање сарадње између развоја и операција може помоћи у решавању ове врсте проблема у већини случајева.

    Што се тиче аутоматизације, можете дефинисати зависности које увелико помажу у убрзавању примена. Алати за управљање конфигурацијом попут Лутка или Шеф допринети додатним нивоом дефиниције зависности. Можемо дефинисати не само зависности унутар наше апликације већ и на нивоу инфраструктуре и конфигурације сервера. На пример, можемо створити виртуелну машину за тест и инсталирати / конфигурисати томцат пре објављивања наших артефаката.

  3. Неефикасно праћење производње

Понекад конфигуришете алате за надзор на начин који производи много небитних података из производње, међутим, други пут не производе довољно или уопште ништа. Не постоји дефиниција о чему треба да пазите и које су метрике.

Морате се договорити о томе шта надгледати и које информације произвести, а затим успоставити контроле. Алати за управљање перформансама апликација су од велике помоћи ако вам ваша организација може приуштити да погледа АппДинамицс, Нев Релиц и АВС Кс-Раи.

ДевОпс сценарији података

ДевОпс се бави уклањањем ризика повезаних са развојем новог софтвера: Анализа података идентификује те ризике. Да би континуирано мерио и унапређивао ДевОпс процес, аналитика би требало да се протеже кроз цео цевовод. Ово пружа непроцењиве увиде о управљању у свим фазама животног циклуса развоја софтвера.

1. Мање времена за анализу података

Уз све податке који се генеришу у било ком тренутку, организације морају да прихвате да не могу све то да анализирају. Једноставно нема довољно времена током дана - и нажалост, роботи још увек нису довољно софистицирани да би то све могли учинити за нас.

Из тог разлога је важно утврдити који су скупови података најзначајнији. У већини случајева ово ће бити другачије за сваку организацију. Дакле, пре него што зароните, одредите кључне пословне циљеве и циљеве. Ти циљеви се типично врте око потреба купаца - првенствено највреднијих карактеристика које су најважније за крајње кориснике. На пример, за малопродају је на врху листе анализа начина на који саобраћај комуницира са страницом за плаћање на веб локацији и тестирање њеног рада у позадини.

Неколико брзих савета за утврђивање података које је најважније анализирати:

  • Направите графикон: Утврдите утицај прекида на ваше предузеће, постављајући питања попут: „Ако Кс паузе , какав ће ефекат имати на друге карактеристике? “

  • Погледајте историјске податке: Утврдите где су се проблеми појавили у прошлости и наставите да анализирате податке из тестова и направите да бисте се уверили да се то неће поновити.

2. Тешка комуникација

Данас већина организација још увек ради са различитим тимовима и личностима идентификујући сопствене циљеве и користећи сопствене алате и технологије. Сваки тим делује независно, искључен са цевовода и састаје се са другим тимовима само током фазе интеграције.

Када је реч о сагледавању шире слике и идентификовању онога што делује, а шта не ради, организација се бори да дође до једног решења. То је зато што највише због тога што сви не успевају да поделе укупне податке, што онемогућава анализу.

неуспех брзо вс неуспех сигурно

Да бисте превазишли овај проблем, преправите ток комуникације како бисте осигурали да сви сарађују током СДЛЦ-а, а не само током процеса интеграције.

  • Прво се побрините за снажну синхронизацију показатеља ДевОпс од самог почетка. Напредак сваког тима треба да се прикаже на једној контролној табли, користећи исте кључне индикаторе учинка (КПИ) да би менаџменту пружио увид у цео процес. То се ради тако да могу прикупити све потребне податке за анализу онога што је пошло по злу (или шта је успело).

  • Поред почетног разговора о метрици, требало би да постоји стална комуникација путем састанака тима или дигиталних канала попут Слацка.

3. Недостатак радне снаге

Када имамо кратко особље, требају нам паметнији алати који користе дубоко учење за уврштавање података које прикупљамо и брзо доношење одлука. На крају, нико нема времена да погледа свако појединачно извршавање теста (а за неке велике организације може их бити око 75.000 у одређеном дану). Трик је у уклањању буке и проналажењу правих ствари на које ћете се фокусирати.

Ту могу да помогну вештачка интелигенција и машинско учење. Многи алати на тржишту данас користе АИ и МЛ за следеће ствари:

  • Развити скрипте и тестове за премештање и потврђивање различитих делова података

  • Извештај о квалитету на основу претходно наученог понашања

  • Радите као одговор на промене у реалном времену.

Дакле, овим смо дошли до краја овог чланка о ДевОпс сценаријима у стварном времену.

Сада када сте схватили шта су ДевОпс сценарији у стварном времену, погледајте ово Едурека, поуздана компанија за учење на мрежи са мрежом од више од 250 000 задовољних ученика раширених широм света. Едурека ДевОпс сертификациони курс помаже ученицима да разумеју шта је ДевОпс и стекну стручност у различитим ДевОпс процесима и алатима као што су Пуппет, Јенкинс, Нагиос, Ансибле, Цхеф, Салтстацк и ГИТ за аутоматизацију више корака у СДЛЦ-у.

Имате питање за нас? Молимо вас да га помињете у одељку за коментаре овогаЧланак ДевОпс сценарија у стварном временуи јавићемо вам се.