NDC Londonas konference. Mikropakalpojumu katastrofu novērÅ”ana. 1. daļa

JÅ«s esat pavadÄ«jis mēneÅ”us, pārveidojot savu monolÄ«tu par mikropakalpojumiem, un beidzot visi ir sanākuÅ”i kopā, lai pārslēgtu slēdzi. JÅ«s dodaties uz pirmo tÄ«mekļa lapu... un nekas nenotiek. JÅ«s to ielādējat atkārtoti - un atkal nekas labs, vietne ir tik lēna, ka tā nereaģē vairākas minÅ«tes. Kas notika?

Savā runā Džimijs Bogards vadÄ«s ā€œpēcnāves pētÄ«jumuā€ par reālās dzÄ«ves mikropakalpojuma katastrofu. ViņŔ parādÄ«s modelÄ“Å”anas, izstrādes un ražoÅ”anas problēmas, ko viņŔ atklāja, un to, kā viņa komanda lēnām pārveidoja jauno izplatÄ«to monolÄ«tu galÄ«gajā saprāta priekÅ”statā. Lai gan nav iespējams pilnÄ«bā novērst projektÄ“Å”anas kļūdas, jÅ«s varat vismaz identificēt problēmas jau projektÄ“Å”anas procesa sākumā, lai nodroÅ”inātu, ka galaprodukts kļūst par uzticamu izplatÄ«tu sistēmu.

NDC Londonas konference. Mikropakalpojumu katastrofu novērÅ”ana. 1. daļa

Sveiki visiem, es esmu Džimijs, un Å”odien jÅ«s uzzināsit, kā izvairÄ«ties no milzÄ«gām katastrofām, veidojot mikropakalpojumus. Å is ir stāsts par uzņēmumu, kurā strādāju apmēram pusotru gadu, lai palÄ«dzētu novērst viņu kuÄ£a sadursmi ar aisbergu. Lai pareizi izstāstÄ«tu Å”o stāstu, mums bÅ«s jāatgriežas pagātnē un jārunā par to, kur Å”is uzņēmums sākās un kā tā IT infrastruktÅ«ra laika gaitā ir augusi. Lai aizsargātu Å”ajā katastrofā nevainÄ«go vārdus, esmu mainÄ«jis Ŕī uzņēmuma nosaukumu uz Bell Computers. Nākamajā slaidā ir parādÄ«ts, kā Ŕādu uzņēmumu IT infrastruktÅ«ra izskatÄ«jās 90. gadu vidÅ«. Å Ä« ir tipiska arhitektÅ«ra lielam universālam kļūmju izturÄ«gam HP Tandem Mainframe serveram datoru aparatÅ«ras veikala darbÄ«bai.

NDC Londonas konference. Mikropakalpojumu katastrofu novērÅ”ana. 1. daļa

Viņiem bija jāizveido sistēma, lai pārvaldÄ«tu visus pasÅ«tÄ«jumus, pārdoÅ”anu, atgrieÅ”anu, produktu katalogus un klientu bāzi, tāpēc viņi izvēlējās tajā laikā visizplatÄ«tāko lieldatoru risinājumu. Å Ä« gigantiskā sistēma ietvēra visu informāciju par uzņēmumu, visu iespējamo, un katrs darÄ«jums tika veikts, izmantojot Å”o lieldatoru. Viņi turēja visas olas vienā grozā un domāja, ka tas ir normāli. VienÄ«gais, kas Å”eit nav iekļauts, ir katalogi pa pastu un pasÅ«tÄ«jumu veikÅ”ana pa tālruni.

Laika gaitā sistēma kļuva arvien lielāka, un tajā sakrājās milzÄ«gs daudzums atkritumu. Turklāt COBOL nav izteiksmÄ«gākā valoda pasaulē, tāpēc sistēma galu galā kļuva par lielu, monolÄ«tu atkritumu gabalu. LÄ«dz 2000. gadam viņi pamanÄ«ja, ka daudziem uzņēmumiem ir vietnes, kurās tie veica visu savu uzņēmējdarbÄ«bu, un nolēma izveidot savu pirmo komerciālo dot-com vietni.

Sākotnējais dizains izskatÄ«jās diezgan jauks un sastāvēja no augstākā lÄ«meņa vietnes bell.com un vairākiem apakÅ”domēniem atseviŔķām lietojumprogrammām: catalog.bell.com, accounts.bell.com, orders.bell.com, produktu meklÄ“Å”ana search.bell. com. Katrs apakÅ”domēns izmantoja ASP.Net 1.0 sistēmu un savas datu bāzes, un tie visi runāja ar sistēmas aizmugursistēmu. Taču visi pasÅ«tÄ«jumi turpinājās apstrādāt un izpildÄ«t vienā milzÄ«gā lieldatorā, kurā palika viss atkritums, bet priekÅ”gals bija atseviŔķas mājaslapas ar atseviŔķām aplikācijām un atseviŔķām datu bāzēm.

NDC Londonas konference. Mikropakalpojumu katastrofu novērÅ”ana. 1. daļa

Tātad sistēmas dizains izskatījās sakārtots un loģisks, bet faktiskā sistēma bija tāda, kā parādīts nākamajā slaidā.

NDC Londonas konference. Mikropakalpojumu katastrofu novērÅ”ana. 1. daļa

Visi elementi adresēja viens otram zvanus, piekļuva API, iegultiem treÅ”o puÅ”u dll un tamlÄ«dzÄ«gi. Bieži gadÄ«jās, ka versiju kontroles sistēmas sagrāba kāda cita kodu, iegrÅ«da to iekŔā projektā, un tad viss salÅ«za. MS SQL Server 2005 izmantoja saiÅ”u serveru jēdzienu, un, lai gan es nerādÄ«ju bultiņas slaidā, katra no datu bāzēm arÄ« runāja savā starpā, jo nav nekas slikts tabulu veidoÅ”anai, pamatojoties uz datiem, kas iegÅ«ti no vairākām datu bāzēm .

Tā kā dažādās sistēmas loÄ£iskās jomas tagad bija zināmā mērā noŔķirtas, tās kļuva par izkliedētiem netÄ«rumiem, un lielākais atkritumu gabals joprojām palika lieldatora aizmugursistēmā.

NDC Londonas konference. Mikropakalpojumu katastrofu novērÅ”ana. 1. daļa

SmieklÄ«gākais bija tas, ka Å”o lieldatoru uzbÅ«vēja Bell Computers konkurenti, un to joprojām uzturēja viņu tehniskie konsultanti. Pārliecināts par savu lietojumprogrammu neapmierinoÅ”o darbÄ«bu, uzņēmums nolēma no tiem atbrÄ«voties un pārveidot sistēmu.

EsoŔā lietojumprogramma tika ražota 15 gadus, kas ir rekords ASP.Net lietojumprogrammām. Pakalpojums pieņēma pasÅ«tÄ«jumus no visas pasaules, un gada ieņēmumi no Ŕīs vienas lietojumprogrammas sasniedza miljardu dolāru. Ievērojamu peļņas daļu guvusi vietne bell.com. Melnajās piektdienās vietnē veikto pasÅ«tÄ«jumu skaits sasniedza vairākus miljonus. Taču esoŔā arhitektÅ«ra neļāva attÄ«stÄ«ties, jo sistēmas elementu stingrie savienojumi praktiski neļāva veikt izmaiņas pakalpojumā.

Nopietnākā problēma bija nespēja veikt pasÅ«tÄ«jumu no vienas valsts, samaksāt par to citā un nosÅ«tÄ«t uz treÅ”o, neskatoties uz to, ka globālajos uzņēmumos Ŕāda tirdzniecÄ«bas shēma ir ļoti izplatÄ«ta. EsoŔā vietne neko tādu neatļāva, tāpēc viņiem bija jāpieņem un jāveic Å”ie pasÅ«tÄ«jumi pa tālruni. Tas lika uzņēmumam arvien vairāk domāt par arhitektÅ«ras maiņu, jo Ä«paÅ”i par pāreju uz mikropakalpojumiem.

Viņi rÄ«kojās gudri, aplÅ«kojot citus uzņēmumus, lai redzētu, kā viņi ir atrisinājuÅ”i lÄ«dzÄ«gu problēmu. Viens no Å”iem risinājumiem bija Netflix pakalpojumu arhitektÅ«ra, kas sastāv no mikropakalpojumiem, kas savienoti, izmantojot API, un ārēju datu bāzi.

Bell Computers vadÄ«ba nolēma izveidot tieÅ”i Ŕādu arhitektÅ«ru, ievērojot noteiktus pamatprincipus. Pirmkārt, viņi novērsa datu dublÄ“Å”anos, izmantojot kopÄ«gu datu bāzes pieeju. Dati netika nosÅ«tÄ«ti, gluži pretēji, visiem, kam tie bija vajadzÄ«gi, bija jādodas uz centralizētu avotu. Tam sekoja izolācija un autonomija ā€“ katrs dienests bija neatkarÄ«gs no pārējiem. Viņi nolēma izmantot Web API pilnÄ«gi visam ā€“ ja vēlējāties iegÅ«t datus vai veikt izmaiņas citā sistēmā, tas viss tika darÄ«ts caur Web API. Pēdējā lielā lieta bija jauns lieldators ar nosaukumu "Bell on Bell" pretstatā "Bell" lieldatoram, kas balstÄ«ts uz konkurentu aparatÅ«ru.

Tāpēc 18 mēneÅ”u laikā viņi izveidoja sistēmu, pamatojoties uz Å”iem pamatprincipiem, un nodeva to pirmsražoÅ”anas stadijā. Pēc nedēļas nogales atgriežoties darbā, izstrādātāji sanāca kopā un ieslēdza visus serverus, kuriem bija pieslēgta jaunā sistēma. 18 mēneÅ”i darba, simtiem izstrādātāju, vismodernākā Bell aparatÅ«ra ā€“ un neviena pozitÄ«va rezultāta! Tas ir licis vilties daudziem cilvēkiem, jo ā€‹ā€‹viņi daudzas reizes ir palaiduÅ”i Å”o sistēmu savos klēpjdatoros, un viss bija kārtÄ«bā.

Viņi bija gudri, iztērējot visu savu naudu Ŕīs problēmas risināŔanai. UzstādÄ«ja modernākos serveru statÄ«vus ar slēdžiem, izmantoja gigabitu optisko Ŕķiedru, jaudÄ«gāko servera aparatÅ«ru ar neprātÄ«gi lielu operatÄ«vo atmiņu, to visu savienoja, konfigurēja - un atkal nekā! Tad viņiem sāka rasties aizdomas, ka iemesls varētu bÅ«t taimauts, tāpēc viņi iegāja visos tÄ«mekļa iestatÄ«jumos, visos API iestatÄ«jumos un atjaunināja visu taimauta konfigurāciju lÄ«dz maksimālajām vērtÄ«bām, lai viss, ko viņi varētu darÄ«t, bija sēdēt un gaidÄ«t, kad kaut kas notiks. uz vietni. Viņi gaidÄ«ja un gaidÄ«ja un gaidÄ«ja 9 ar pusi minÅ«tes, lÄ«dz vietne beidzot tika ielādēta.

Pēc tam viņiem saprata, ka paÅ”reizējā situācija ir rÅ«pÄ«gi jāanalizē, un viņi mÅ«s uzaicināja. Pirmais, ko uzzinājām, bija tas, ka visu 18 attÄ«stÄ«bas mēneÅ”u laikā netika izveidots neviens Ä«sts ā€œmikroā€ ā€“ viss kļuva tikai lielāks. Pēc tam mēs sākām rakstÄ«t pēcnāves ziņojumu, kas pazÄ«stams arÄ« kā ā€œnožēlaā€ vai ā€œskumja retrospekcijaā€, kas pazÄ«stama arÄ« kā ā€œvainojuma vētraā€, kas lÄ«dzinās ā€œprāta vētraiā€, lai izprastu katastrofas cēloni.

Mums bija vairākas norādes, no kurām viena bija pilnÄ«ga trafika piesātinājums API izsaukuma laikā. Izmantojot monolÄ«tu pakalpojumu arhitektÅ«ru, varat uzreiz saprast, kas tieÅ”i nogāja greizi, jo jums ir viena steka izsekoÅ”ana, kas ziņo par visu, kas varēja izraisÄ«t kļūmi. GadÄ«jumā, ja vairāki pakalpojumi vienlaikus piekļūst vienai un tai paÅ”ai API, izsekoÅ”anu nevar izsekot, izņemot, izmantojot papildu tÄ«kla uzraudzÄ«bas rÄ«kus, piemēram, WireShark, pateicoties kuriem varat pārbaudÄ«t vienu pieprasÄ«jumu un uzzināt, kas notika tā ievieÅ”anas laikā. Tāpēc mēs paņēmām vienu tÄ«mekļa lapu un pavadÄ«jām gandrÄ«z 2 nedēļas, lai kopā saliktu puzles gabalus, piezvanÄ«tu uz to un analizētu, pie kā katrs no tiem noveda.
Paskaties uz Å”o attēlu. Tas parāda, ka viens ārējs pieprasÄ«jums liek pakalpojumam veikt daudzus iekŔējos zvanus, kas atgriežas. Izrādās, ka katrs iekŔējais zvans veic papildu lēcienus, lai varētu patstāvÄ«gi apkalpot Å”o pieprasÄ«jumu, jo nekur citur nevar griezties, lai iegÅ«tu nepiecieÅ”amo informāciju. Å is attēls izskatās pēc bezjēdzÄ«gas zvanu kaskādes, jo ārējais pieprasÄ«jums izsauc papildu pakalpojumus, kas izsauc citus papildu pakalpojumus un tā tālāk, gandrÄ«z bezgalÄ«gi.

NDC Londonas konference. Mikropakalpojumu katastrofu novērÅ”ana. 1. daļa

Zaļā krāsa Å”ajā diagrammā parāda pusloku, kurā pakalpojumi zvana viens otram - pakalpojums A izsauc pakalpojumu B, pakalpojums B izsauc pakalpojumu C un tas atkal izsauc pakalpojumu A. Rezultātā mēs iegÅ«stam ā€œizplatÄ«tu strupceļuā€. Viens pieprasÄ«jums radÄ«ja tÅ«kstoÅ” tÄ«kla API zvanu, un, tā kā sistēmai nebija iebÅ«vētas kļūdu tolerances un cilpas aizsardzÄ«bas, pieprasÄ«jums neizdosies, ja pat viens no Å”iem API izsaukumiem neizdodas.

Mēs veicām matemātiku. Katram API zvanam SLA bija ne vairāk kā 150 ms un 99,9% darbÄ«bas laiks. Viens pieprasÄ«jums izraisÄ«ja 200 dažādus zvanus, un labākajā gadÄ«jumā lapu varēja parādÄ«t 200 x 150 ms = 30 sekundes. Protams, tas nebija labi. Reizinot 99,9% darbÄ«bas laiku ar 200, mēs saņēmām 0% pieejamÄ«bu. Izrādās, ka Ŕī arhitektÅ«ra jau no paÅ”a sākuma bija lemta neveiksmei.

Mēs jautājām izstrādātājiem, kā viņi nespēja atpazÄ«t Å”o problēmu pēc 18 mēneÅ”u darba? IzrādÄ«jās, ka viņi skaitÄ«ja tikai SLA par kodu, kuru viņi palaida, bet, ja viņu pakalpojums izsauca citu pakalpojumu, viņi to neskaitÄ«ja savā SLA. Viss, kas tika palaists viena procesa ietvaros, saglabājās 150 ms vērtÄ«bā, bet piekļuve citiem pakalpojumu procesiem palielināja kopējo aizkavi vairākas reizes. Pirmā mācÄ«ba, kas gÅ«ta, bija: ā€œVai jÅ«s kontrolējat savu SLA, vai arÄ« SLA kontrolē jÅ«s?ā€ MÅ«su gadÄ«jumā tas bija pēdējais.

Nākamā lieta, ko atklājām, bija tas, ka viņi zināja par izplatÄ«to skaitļoÅ”anas nepareizo priekÅ”statu jēdzienu, ko formulēja PÄ«ters Deičs un Džeimss Goslings, taču viņi ignorēja tā pirmo daļu. Tajā teikts, ka apgalvojumi ā€œtÄ«kls ir uzticamsā€, ā€œnulles latentumsā€ un ā€œbezgalÄ«ga caurlaidspējaā€ ir maldi. Citi maldÄ«gi priekÅ”stati ir apgalvojumi "tÄ«kls ir droÅ”s", "topoloÄ£ija nekad nemainās", "vienmēr ir tikai viens administrators", "datu pārsÅ«tÄ«Å”anas izmaksas ir nulle" un "tÄ«kls ir viendabÄ«gs".
Viņi pieļāva kļūdu, jo pārbaudÄ«ja savus pakalpojumus vietējās iekārtās un nekad nepievienojās ārējiem pakalpojumiem. Izstrādājot lokāli un izmantojot lokālo keÅ”atmiņu, viņi nekad nesaskārās ar tÄ«kla apiņiem. Visos 18 attÄ«stÄ«bas mēneÅ”os viņi ne reizi nav domājuÅ”i, kas varētu notikt, ja tiktu ietekmēti ārējie pakalpojumi.

NDC Londonas konference. Mikropakalpojumu katastrofu novērÅ”ana. 1. daļa

Ja paskatās uz pakalpojuma robežas iepriekŔējā attēlā, var redzēt, ka tās visas ir nepareizas. Ir daudz avotu, kas sniedz padomus, kā noteikt pakalpojumu robežas, un lielākā daļa to dara nepareizi, piemēram, Microsoft nākamajā slaidā.

NDC Londonas konference. Mikropakalpojumu katastrofu novērÅ”ana. 1. daļa

Å is attēls ir no MS emuāra par tēmu ā€œKā izveidot mikropakalpojumusā€. Tas parāda vienkārÅ”u tÄ«mekļa lietojumprogrammu, biznesa loÄ£ikas bloku un datu bāzi. PieprasÄ«jums nāk tieÅ”i, iespējams, ir viens serveris tÄ«meklim, viens serveris uzņēmumam un viens datubāzei. Ja palielināsiet satiksmi, attēls nedaudz mainÄ«sies.

NDC Londonas konference. Mikropakalpojumu katastrofu novērÅ”ana. 1. daļa

Å eit ir slodzes lÄ«dzsvarotājs, lai sadalÄ«tu trafiku starp diviem tÄ«mekļa serveriem, keÅ”atmiņa, kas atrodas starp tÄ«mekļa pakalpojumu un biznesa loÄ£iku, un vēl viena keÅ”atmiņa starp biznesa loÄ£iku un datu bāzi. TieÅ”i Ŕādu arhitektÅ«ru Bell izmantoja slodzes lÄ«dzsvaroÅ”anai un zilās/zaļās izvietoÅ”anas lietojumprogrammai 2000. gadu vidÅ«. LÄ«dz kādu laiku viss darbojās labi, jo Ŕī shēma bija paredzēta monolÄ«tai konstrukcijai.

Nākamajā attēlā parādÄ«ts, kā MS iesaka pāriet no monolÄ«ta uz mikropakalpojumiem - vienkārÅ”i sadalot katru no galvenajiem pakalpojumiem atseviŔķos mikropakalpojumos. TieÅ”i Ŕīs shēmas ievieÅ”anas laikā Bells kļūdÄ«jās.

NDC Londonas konference. Mikropakalpojumu katastrofu novērÅ”ana. 1. daļa

Viņi sadalÄ«ja visus savus pakalpojumus dažādos lÄ«meņos, no kuriem katrs sastāvēja no daudziem atseviŔķiem pakalpojumiem. Piemēram, tÄ«mekļa pakalpojums ietvēra mikropakalpojumus satura renderÄ“Å”anai un autentifikācijai, biznesa loÄ£ikas pakalpojums sastāvēja no mikropakalpojumiem pasÅ«tÄ«jumu un konta informācijas apstrādei, datu bāze tika sadalÄ«ta mikropakalpojumos ar specializētiem datiem. Gan tÄ«meklis, gan biznesa loÄ£ika, gan datubāze bija bezvalstniecÄ«bas pakalpojumi.

Tomēr Å”is attēls bija pilnÄ«gi nepareizs, jo tajā netika kartēta neviena biznesa vienÄ«ba ārpus uzņēmuma IT klastera. Å Ä« shēma neņēma vērā nekādu saistÄ«bu ar ārpasauli, tāpēc nebija skaidrs, kā, piemēram, iegÅ«t treŔās puses biznesa analÄ«zi. Es atzÄ«mēju, ka viņiem bija arÄ« vairāki pakalpojumi, kas tika izgudroti vienkārÅ”i, lai attÄ«stÄ«tu atseviŔķu darbinieku karjeru, kuri centās vadÄ«t pēc iespējas vairāk cilvēku, lai par to iegÅ«tu vairāk naudas.

Viņi uzskatÄ«ja, ka pāreja uz mikropakalpojumiem ir tikpat vienkārÅ”a kā iekŔējā N lÄ«meņa fiziskā slāņa infrastruktÅ«ras izmantoÅ”ana un Docker pielÄ«mÄ“Å”ana tai. ApskatÄ«sim, kā izskatās tradicionālā N lÄ«meņa arhitektÅ«ra.

NDC Londonas konference. Mikropakalpojumu katastrofu novērÅ”ana. 1. daļa

Tas sastāv no 4 līmeņiem: lietotāja interfeisa līmeņa, biznesa loģikas līmeņa, datu piekļuves līmeņa un datu bāzes. Progresīvāka ir DDD (Domain-Driven Design) jeb uz programmatūru orientēta arhitektūra, kur divi vidējie līmeņi ir domēna objekti un repozitorijs.

NDC Londonas konference. Mikropakalpojumu katastrofu novērÅ”ana. 1. daļa

Es mēģināju aplÅ«kot dažādas pārmaiņu jomas, dažādas atbildÄ«bas jomas Å”ajā arhitektÅ«rā. Tipiskā N lÄ«meņa lietojumprogrammā tiek klasificētas dažādas izmaiņu jomas, kas caurstrāvo struktÅ«ru vertikāli no augÅ”as uz leju. Tie ir katalogs, konfigurācijas iestatÄ«jumi, kas veikti atseviŔķos datoros, un Checkout pārbaudes, ko veica mana komanda.

NDC Londonas konference. Mikropakalpojumu katastrofu novērÅ”ana. 1. daļa

Å Ä«s shēmas Ä«patnÄ«ba ir tāda, ka Å”o pārmaiņu jomu robežas ietekmē ne tikai biznesa loÄ£ikas lÄ«meni, bet arÄ« sniedzas lÄ«dz datu bāzei.

ApskatÄ«sim, ko nozÄ«mē bÅ«t pakalpojumam. Pakalpojuma definÄ«cijai ir 6 raksturÄ«gas Ä«paŔības - tā ir programmatÅ«ra, kas:

  • izveidojusi un izmantojusi konkrēta organizācija;
  • ir atbildÄ«gs par noteikta veida informācijas saturu, apstrādi un/vai nodroÅ”ināŔanu sistēmā;
  • var uzbÅ«vēt, izvietot un darboties neatkarÄ«gi, lai apmierinātu Ä«paÅ”as darbÄ«bas vajadzÄ«bas;
  • sazinās ar patērētājiem un citiem dienestiem, sniedzot informāciju, pamatojoties uz lÄ«gumiem vai lÄ«guma garantijām;
  • pasargā sevi no nesankcionētas piekļuves un savu informāciju no pazaudÄ“Å”anas;
  • risina kļūmes tā, lai tās neizraisÄ«tu informācijas bojājumus.

Visas Ŕīs Ä«paŔības var izteikt ar vienu vārdu ā€œautonomijaā€. Pakalpojumi darbojas neatkarÄ«gi viens no otra, atbilst noteiktiem ierobežojumiem un definē lÄ«gumus, uz kuru pamata cilvēki var saņemt viņiem nepiecieÅ”amo informāciju. Es neminēju konkrētas tehnoloÄ£ijas, kuru izmantoÅ”ana ir paÅ”saprotama.

Tagad apskatīsim mikropakalpojumu definīciju:

  • mikropakalpojums ir maza izmēra un paredzēts vienas konkrētas problēmas risināŔanai;
  • Mikropakalpojums ir autonoms;
  • Veidojot mikropakalpojumu arhitektÅ«ru, tiek izmantota pilsētplānoÅ”anas metafora. Å Ä« ir definÄ«cija no Sema Ņūmena grāmatas Building Microservices.

Ierobežotā konteksta definÄ«cija ir ņemta no Ērika Evansa grāmatas Domain-Driven Design. Å is ir galvenais modelis DDD ā€” arhitektÅ«ras dizaina centrā, kas strādā ar apjomÄ«giem arhitektÅ«ras modeļiem, sadalot tos dažādos ierobežotajos kontekstos un skaidri definējot mijiedarbÄ«bu starp tiem.

NDC Londonas konference. Mikropakalpojumu katastrofu novērÅ”ana. 1. daļa

VienkārÅ”i sakot, ierobežotais konteksts apzÄ«mē darbÄ«bas jomu, kurā var izmantot konkrētu moduli. Å ajā kontekstā ir loÄ£iski vienots modelis, ko var redzēt, piemēram, jÅ«su biznesa domēnā. Ja pasÅ«tÄ«jumos iesaistÄ«tajam personālam jautāsiet "kas ir klients", jÅ«s saņemsiet vienu definÄ«ciju, ja jautāsiet pārdoÅ”anas jomā iesaistÄ«tajiem, jÅ«s saņemsiet citu, bet izpildÄ«tāji sniegs treÅ”o definÄ«ciju.

Tātad, Ierobežotais konteksts saka: ja mēs nevaram sniegt skaidru definÄ«ciju tam, kas ir mÅ«su pakalpojumu patērētājs, definēsim robežas, kurās mēs varam runāt par Ŕī termina nozÄ«mi, un pēc tam definēsim pārejas punktus starp Ŕīm dažādajām definÄ«cijām. Tas ir, ja mēs runājam par klientu no pasÅ«tÄ«jumu veikÅ”anas viedokļa, tas nozÄ«mē to un to, un, ja no pārdoÅ”anas viedokļa, tas nozÄ«mē to un to.

Nākamā mikropakalpojuma definÄ«cija ir jebkāda veida iekŔējo darbÄ«bu iekapsulÄ“Å”ana, novērÅ”ot darba procesa komponentu ā€œnoplÅ«diā€ vidē. Tālāk nāk "precÄ«zu lÄ«gumu definÄ«cija ārējai mijiedarbÄ«bai vai ārējai komunikācijai", ko atspoguļo ideja par lÄ«gumiem, kas atgriežas no SLA. Pēdējā definÄ«cija ir Ŕūnas vai Ŕūnas metafora, kas nozÄ«mē pilnÄ«gu darbÄ«bu kopuma iekapsulÄ“Å”anu mikropakalpojumā un receptoru klātbÅ«tni tajā saziņai ar ārpasauli.

NDC Londonas konference. Mikropakalpojumu katastrofu novērÅ”ana. 1. daļa

Tāpēc mēs teicām Bell Computers puiÅ”iem: "Mēs nevaram novērst jÅ«su radÄ«to haosu, jo jums vienkārÅ”i nav naudas, lai to izdarÄ«tu, bet mēs izlabosim tikai vienu pakalpojumu, lai tas viss bÅ«tu sajÅ«tu.ā€ Å ajā brÄ«dÄ« es sākÅ”u ar to, kā mēs labojām savu vienÄ«go pakalpojumu, lai tas atbildētu uz pieprasÄ«jumiem ātrāk nekā 9 ar pusi minÅ«tes.

22:30 min

Turpinājums jau pavisam drīz...

Kaut kāda reklāma

Paldies, ka palikāt kopā ar mums. Vai jums patīk mūsu raksti? Vai vēlaties redzēt interesantāku saturu? Atbalsti mūs, pasūtot vai iesakot draugiem, mākoņa VPS izstrādātājiem no 4.99 USD, unikāls sākuma līmeņa serveru analogs, ko mēs jums izgudrojām: Visa patiesība par VPS (KVM) E5-2697 v3 (6 kodoli) 10GB DDR4 480GB SSD 1Gbps no 19$ vai kā koplietot serveri? (pieejams ar RAID1 un RAID10, līdz 24 kodoliem un līdz 40 GB DDR4).

Dell R730xd 2x lētāk Equinix Tier IV datu centrā Amsterdamā? Tikai Å”eit 2x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TV no 199$ NÄ«derlandē! Dell R420 ā€” 2x E5-2430 2.2 GHz 6C 128 GB DDR3 2x960 GB SSD 1 Gbps 100 TB ā€” no 99 USD! LasÄ«t par Kā izveidot infrastruktÅ«ras uzņēmumu klase ar Dell R730xd E5-2650 v4 serveru izmantoÅ”anu 9000 eiro par santÄ«mu?

Avots: www.habr.com

Pievieno komentāru