A 'taghadh stoidhle ailtireachd (pàirt 1)

Halo, habr. Tha clàradh airson sruth cùrsa ùr fosgailte an-dràsta aig OTUS "ailtire bathar-bog". Air an oidhche ro thoiseach a’ chùrsa, tha mi airson an artaigil tùsail agam a cho-roinn riut.

Ro-ràdh

Is e an roghainn stoidhle ailtireachd aon de na co-dhùnaidhean teicnigeach bunaiteach nuair a thathar a’ togail siostam fiosrachaidh. Anns an t-sreath artaigilean seo, tha mi a 'moladh mion-sgrùdadh a dhèanamh air na stoidhlichean ailtireachd as mòr-chòrdte airson tagraidhean togail agus freagair a' cheist cuin dè an stoidhle ailtireachd as fheàrr. Anns a 'phròiseas taisbeanaidh, feuchaidh mi ri sreath loidsigeach a tharraing a mhìnicheas leasachadh stoidhlichean ailtireachd bho monoliths gu microservices.

Pàirt de dh'eachdraidh

Ma dh'fheuchas tu ri faighneachd do luchd-leasachaidh: "Carson a tha feum againn air microservices?", gheibh thu measgachadh de fhreagairtean. Cluinnidh tu gu bheil microservices a 'leasachadh scalability, a' dèanamh còd nas fhasa a thuigsinn, a 'leasachadh fulangas sgàinidhean, agus uaireannan cluinnidh tu gu bheil iad a' leigeil leat "do chòd a ghlanadh." Bheir sinn sùil air eachdraidh gus tuigse fhaighinn air an adhbhar a tha air cùl nochdadh microservices.

Ann an ùine ghoirid, dh’ èirich meanbh-sheirbheisean nar tuigse làithreach mar a leanas: ann an 2011, tharraing Seumas Lewis, a’ dèanamh anailis air obair diofar chompanaidhean, aire gu nochdadh pàtran ùr “micro-app”, a leasaich SOA a thaobh a bhith a’ luathachadh cleachdadh seirbhisean. Beagan nas fhaide air adhart, ann an 2012, aig mullach ailtireachd, chaidh am pàtran ath-ainmeachadh mar microservice. Mar sin, b’ e a’ chiad amas a bhith a’ toirt a-steach meanbh-sheirbheisean na daoine ainmeil a leasachadh ùine gu margaid.

Bha microservices air an tonn hype ann an 2015. A rèir cuid de sgrùdaidhean, cha robh aon cho-labhairt crìochnaichte às aonais aithisg air cuspair microservices. A bharrachd air an sin, chaidh cuid de cho-labhairtean a chuir gu sònraichte airson microservices. An-diugh, tha mòran phròiseactan a 'tòiseachadh a' cleachdadh an stoidhle ailtireachd seo, agus ma tha tonna de chòd dìleab anns a 'phròiseact, is dòcha gu bheilear a' dèanamh imrich gu microservices gu gnìomhach.

A dh'aindeoin na tha gu h-àrd, tha àireamh bheag de luchd-leasachaidh fhathast comasach air bun-bheachd "microservice" a mhìneachadh. Ach bruidhnidh sinn mu dheidhinn beagan nas fhaide air adhart ...

Monolith

Is e an stoidhle ailtireachd a tha eadar-dhealaichte bho microservices am monolith (no uile-ann-aon). Is dòcha nach eil e ciallach innse dè a th’ ann am monolith, agus mar sin liostaichidh mi sa bhad na h-eas-bhuannachdan a tha san stoidhle ailtireachd seo, a thòisich air tuilleadh leasachaidh air stoidhlichean ailtireachd: meud, ceangal, cleachdadh, scalability, earbsachd agus cruadalachd. Gu h-ìosal tha mi a 'moladh sùil a thoirt air gach aon de na h-easbhaidhean fa leth.

meud

Tha am monolith gu math mòr. Agus mar as trice bidh e a’ conaltradh le stòr-dàta glè mhòr. Bidh an tagradh a’ fàs ro mhòr airson aon leasaiche a thuigsinn idir. Is e dìreach an fheadhainn a chuir seachad tòrr ùine ag obair air a 'chòd seo a dh' obraicheas gu math leis a 'monolith, agus bidh luchd-tòiseachaidh a' caitheamh mòran ùine a 'feuchainn ris a' monolith obrachadh a-mach agus chan eil gealltanas sam bith ann gun dèan iad a-mach e. Mar as trice, nuair a bhios tu ag obair le monolith, tha an-còmhnaidh àrd-neach “cùmhnantach” aig a bheil eòlas nas fheàrr air a ’monolith agus a bheir buaidh air làmhan luchd-leasachaidh ùra eile taobh a-staigh bliadhna gu leth. Gu nàdarra, is e aon phuing fàiligeadh a tha ann an àrd-chumhachdach mar sin, agus faodaidh e bàs an monolith leantainn gu bàs.

Ceangalachd

Is e “bàla mòr eabar” a th’ anns a’ monolith, agus faodaidh atharraichean leantainn gu builean nach gabh a thuigsinn. Le bhith a’ dèanamh atharrachaidhean ann an aon àite, faodaidh tu am monolith a mhilleadh ann an àite eile (an aon rud “sgrath thu do chluas, thuit * @ dheth”). Tha seo air sgàth gu bheil na pàirtean anns a 'monolith gu math iom-fhillte agus, as cudromaiche, dàimhean neo-fhollaiseach.

Cleachdadh

Tha cleachdadh monolith, mar thoradh air na dàimhean iom-fhillte eadar na co-phàirtean aige, na phròiseas fada leis an deas-ghnàth aige fhèin. Mar as trice chan eil deas-ghnàth mar seo gu tur àbhaisteach agus thèid a chuir air adhart “gu labhairteach.”

Scalability

Is dòcha gu bheil feumalachdan stòrais eadar-dhealaichte aig modalan monolith, a dh’ fheumas co-rèiteachadh a dhèanamh a thaobh bathar-cruaidh. Smaoinich gu bheil monolith agad air a dhèanamh suas de sheirbheisean A agus B. Tha iarrtas mòr air seirbheis A air meud a’ chruaidh-chruaidh, agus tha seirbheis B ag iarraidh air RAM. Anns a 'chùis seo, feumaidh an inneal air a bheil am monolith air a chuir a-steach taic a thoirt do riatanasan an dà sheirbheis, no feumaidh tu aon de na seirbheisean a dhì-cheadachadh le làimh.

Eisimpleir eile (nas clasaigeach): tha seirbheis A tòrr nas mòr-chòrdte na seirbheis B, agus mar sin tha thu airson gum bi 100 seirbheis A, agus 10 seirbheis B. A-rithist, dà roghainn: an dàrna cuid bidh sinn a’ cleachdadh 100 monoliths làn-chuimseach, no air cuid an uairsin feumaidh seirbheisean B a bhith ciorramach le làimh.

Fiachan

Leis gu bheil na seirbheisean uile air an suidheachadh còmhla, ma thuiteas am monolith, bidh na seirbheisean uile a 'tuiteam aig an aon àm. Gu dearbh, is dòcha nach bi seo cho dona, co-dhiù cha bhi fàilligidhean ann an siostam sgaoilte, ach air an làimh eile, air sgàth bug ann an comas-gnìomh a bhios 0.001% de luchd-cleachdaidh a’ cleachdadh, faodaidh tu an luchd-cleachdaidh gu lèir a chall. den t-siostam agad.

Inertia

Air sgàth meud an monolith, tha e doirbh atharrachadh gu teicneòlasan ùra. Mar thoradh air an sin, is e obair air leth a th’ ann a bhith a’ cumail an aon àrd-neach sin. Faodaidh an stac teicneòlais a chaidh a thaghadh aig toiseach pròiseact a thighinn gu bhith na bhloca a chuireas bacadh air leasachadh an toraidh.

co-dhùnadh

An ath thuras bruidhnidh sinn mu mar a tha daoine air feuchainn ris na duilgheadasan sin fhuasgladh le bhith a’ gluasad gu co-phàirtean agus SOA.

A 'taghadh stoidhle ailtireachd (pàirt 1)

Leugh tuilleadh:

Source: www.habr.com

Cuir beachd ann