Ailtireachd Bathar-bog agus Dealbhadh Siostaman: An Dealbh Mòr agus Stiùireadh Ghoireasan

Halo a cho-obraichean.

An-diugh tha sinn a’ tabhann dhut eadar-theangachadh de artaigil le Tugberk Ugurlu, a ghabh os làimh cunntas a thoirt ann an tomhas beag gu ìre mhath air prionnsapalan dealbhadh siostaman bathar-bog an latha an-diugh. Seo na tha an t-ùghdar ag ràdh mu dheidhinn fhèin ann an geàrr-chunntas:

Ailtireachd Bathar-bog agus Dealbhadh Siostaman: An Dealbh Mòr agus Stiùireadh Ghoireasan
Leis gu bheil e gu tur eu-comasach a bhith a’ còmhdach ann an artaigil habro cuspair cho mòr ri pàtrain ailtireachd + pàtrain dealbhaidh mar 2019, tha sinn a’ moladh chan e a-mhàin teacsa Mhgr Uruglu fhèin, ach cuideachd na ceanglaichean iomadach a chuir e a-steach ann. Mas toil leat e, foillsichidh sinn teacsa nas sònraichte mu dhealbhadh shiostaman sgaoilte.

Ailtireachd Bathar-bog agus Dealbhadh Siostaman: An Dealbh Mòr agus Stiùireadh Ghoireasan

Snapshot Isaac Smith bho Unsplash

Mura feum thu a-riamh aghaidh a thoirt air dùbhlain leithid a bhith a’ dealbhadh siostam bathar-bog bhon fhìor thoiseach, an uairsin nuair a thòisicheas tu air obair mar sin, uaireannan chan eil e eadhon soilleir càite an tòisich thu. Tha mi a’ creidsinn gum feum thu an toiseach crìochan a tharraing gus am bi beachd nas cinntiche no nas lugha agad air dè dìreach a tha thu gu bhith a’ dealbhadh, agus an uairsin roiligeadh suas do sleeves agus obraich taobh a-staigh nan crìochan sin. Mar thoiseach tòiseachaidh, faodaidh tu toradh no seirbheis a ghabhail (b’ fheàrr fear a tha a’ còrdadh riut gu mòr) agus obraich a-mach mar a chuireas tu an gnìomh e. Is dòcha gun cuir e iongnadh ort cho sìmplidh ‘s a tha an toradh seo a’ coimhead, agus dè cho iom-fhillte ‘s a tha e. Na dìochuimhnich: sìmplidh - mar as trice iom-fhillte, agus tha sin ceart gu leòr.

Tha mi a’ smaoineachadh gur e seo a’ chomhairle as fheàrr as urrainn dhomh a thoirt do dhuine sam bith a tha a’ tòiseachadh air siostam a dhealbhadh: na gabh beachd sam bith! Bhon fhìor thoiseach, feumaidh tu na fìrinnean a tha aithnichte mun t-siostam seo agus na dùilean co-cheangailte ris a shònrachadh. Seo cuid de na ceistean math a dh'fhaighnicheas tu gus do chuideachadh gus tòiseachadh leis an dealbhadh agad:

  • Dè an duilgheadas a tha sinn a’ feuchainn ri fuasgladh?
  • Dè an àireamh as àirde de luchd-cleachdaidh a bhios ag eadar-obrachadh leis an t-siostam againn?
  • Dè na pàtranan de sgrìobhadh agus dàta leughaidh a chleachdas sinn?
  • Dè na cùisean fàiligeadh ris a bheil dùil, ciamar a làimhsicheas sinn iad?
  • Dè na thathar a’ sùileachadh airson cunbhalachd an t-siostaim agus na tha ri fhaighinn?
  • Am feum thu aire a thoirt do riatanasan sam bith co-cheangailte ri dearbhadh agus riaghladh bhon taobh a-muigh nuair a bhios tu ag obair?
  • Dè an seòrsa dàta mothachail a bhios sinn a’ stòradh?

Seo dìreach beagan cheistean a tha air a bhith feumail dhomh agus dha na sgiobaidhean anns an do ghabh mi pàirt thar nam bliadhnaichean de ghnìomhachd proifeasanta. Ma tha fios agad air freagairtean nan ceistean sin (agus feadhainn eile a tha buntainneach don cho-theacsa anns am feum thu a bhith ag obair), faodaidh tu mean air mhean sgrùdadh a dhèanamh air mion-fhiosrachadh teicnigeach na duilgheadas.

Suidhich an ìre tòiseachaidh

Dè tha mi a’ ciallachadh le “bun-loidhne” an seo? Gu fìrinneach, anns na h-amannan againn, faodar a ’mhòr-chuid de dhuilgheadasan ann an gnìomhachas bathar-bog“ fhuasgladh le bhith a ’cleachdadh dhòighean agus theicneòlasan a th’ ann mar-thà. Mar sin, le bhith a’ seòladh na cruth-tìre seo, gheibh thu fìor thoiseach tòiseachaidh nuair a tha duilgheadasan agad a dh’ fheumadh cuideigin eile fhuasgladh romhad. Na dì-chuimhnich gu bheil prògraman air an sgrìobhadh gus fuasgladh fhaighinn air duilgheadasan gnìomhachais agus luchd-cleachdaidh, agus mar sin bidh sinn a 'feuchainn ri fuasgladh fhaighinn air an duilgheadas anns an dòigh as sìmplidh agus as sìmplidh (bho shealladh an neach-cleachdaidh). Carson a tha seo cudromach cuimhneachadh? Is dòcha anns an t-siostam co-òrdanachaidh agad gum bu toil leat a bhith a’ coimhead airson fuasglaidhean gun samhail airson a h-uile duilgheadas, oir tha thu a’ smaoineachadh, “dè an seòrsa prògramadair a th’ annam ma leanas mi pàtrain anns a h-uile àite”? Leis an fhìrinn innse, tha an ealain an seo a’ dèanamh cho-dhùnaidhean mu càite agus dè a nì thu. Gu dearbh, feumaidh gach fear againn dèiligeadh ri duilgheadasan sònraichte bho àm gu àm, agus tha gach fear dhiubh na fhìor dhùbhlan. Ach, ma tha an ìre tòiseachaidh againn air a mhìneachadh gu soilleir, tha fios againn dè a chosgas sinn ar lùth air: a’ lorg roghainnean deiseil airson fuasgladh fhaighinn air an duilgheadas a tha air thoiseach oirnn, no le bhith ga sgrùdadh agus a’ faighinn tuigse nas doimhne.

Tha mi a’ smaoineachadh gun robh e comasach dhomh toirt a chreidsinn ort ma tha eòlaiche le misneachd a ’tuigsinn dè a th’ ann am pàirt ailtireil cuid de shiostaman bathar-bog mìorbhuileach, bidh an t-eòlas seo riatanach airson a bhith a ’maighstireachd ealain ailtire agus a’ leasachadh bunait làidir san raon seo.

Ceart gu leòr, mar sin càite an tòisich thu? U Donna Martina Tha stòr air GitHub ris an canar siostam-dealbhadh-primer, às an ionnsaich thu mar a dhealbhaicheas tu siostaman mòra, a bharrachd air ullachadh airson agallamhan air a’ chuspair seo. Tha earrann anns an ionad-tasgaidh le eisimpleirean fìor ailtireachd, far a bheilear gu sònraichte a’ beachdachadh air mar a tha iad a’ dèiligeadh ri dealbhadh nan siostaman aca cuid de chompanaidhean ainmeilme Twitter, Uber, msaa.

Ach, mus gluais sinn air adhart chun stuth seo, leig dhuinn sùil nas mionaidiche a thoirt air na dùbhlain ailtireil as cudromaiche a tha romhainn ann an cleachdadh. Tha seo cudromach oir feumaidh tu MANY thaobhan de dhuilgheadas stòlda agus ioma-thaobhach a shònrachadh, agus an uairsin fhuasgladh taobh a-staigh frèam nan riaghailtean a tha an sàs ann an siostam sònraichte. Jackson Gabbard, a bha na neach-obrach Facebook roimhe, sgrìobh e Bhidio 50-mionaid mu agallamhan dealbhadh shiostaman, far an do roinn e an eòlas aige fhèin air sgrìonadh ceudan de thagraichean. Ged a tha am bhidio a’ cur fòcas mòr air dealbhadh siostam mòr agus na slatan-tomhais soirbheachais a tha cudromach nuair a thathar a’ coimhead airson tagraiche airson a leithid de shuidheachadh, bidh e fhathast na ghoireas farsaing air na rudan as cudromaiche nuair a thathar a’ dealbhadh shiostaman. Tha mi cuideachd a 'moladh geàrr-chunntas a' bhidio seo.

Tog eòlas air stòradh agus faighinn air ais dàta

Mar as trice, bidh buaidh chudromach aig do cho-dhùnadh mu mar a bhios tu a’ stòradh agus a’ faighinn air ais an dàta agad san fhad-ùine air coileanadh siostam. Mar sin, feumaidh tu an-toiseach na feartan sgrìobhaidh is leughaidh a tha dùil aig an t-siostam agad a thuigsinn. An uairsin feumaidh tu a bhith comasach air na comharran sin a mheasadh agus roghainnean a dhèanamh stèidhichte air na measaidhean a chaidh a dhèanamh. Ach, chan urrainn dhut dèiligeadh gu h-èifeachdach ris an obair seo ach ma thuigeas tu pàtrain stòraidh dàta a tha ann mar-thà. Ann am prionnsabal, tha seo a 'ciallachadh eòlas làidir co-cheangailte ri taghadh stòr-dàta.

Faodar smaoineachadh air stòran-dàta mar structaran dàta a tha gu math scalable agus seasmhach. Mar sin, bu chòir eòlas air structaran dàta a bhith glè fheumail dhut nuair a thaghas tu stòr-dàta sònraichte. Mar eisimpleir, Redis na fhrithealaiche structar dàta a bheir taic do dhiofar sheòrsaichean luachan. Leigidh e leat obrachadh le structaran dàta leithid liostaichean agus seataichean, agus dàta a leughadh a’ cleachdadh algorithms ainmeil, mar eisimpleir, LRU, ag eagrachadh obair mar seo ann an stoidhle seasmhach agus ruigsinneach.

Ailtireachd Bathar-bog agus Dealbhadh Siostaman: An Dealbh Mòr agus Stiùireadh Ghoireasan

Snapshot Samuel Zeller bho Unsplash

Aon uair ‘s gu bheil tuigse gu leòr agad air na diofar phàtranan stòraidh dàta, gluais air adhart gu bhith a’ sgrùdadh cunbhalachd dàta agus ruigsinneachd. An toiseach, feumaidh tu tuigsinn Teòirim CAP co-dhiù san fharsaingeachd, agus an uairsin snasaich an t-eòlas seo le bhith a’ toirt sùil nas mionaidiche air pàtrain stèidhichte cunbhalachd и ruigsinneachd. San dòigh seo, fàsaidh tu nas eòlaiche san raon seo agus tuigidh tu gur e dà dhuilgheadas gu math eadar-dhealaichte a th’ ann an leughadh is sgrìobhadh dàta, gach fear le dùbhlain sònraichte fhèin. Armaichte le beagan phàtranan cunbhalachd is ruigsinneachd, faodaidh tu coileanadh siostam àrdachadh gu mòr fhad ‘s a nì thu cinnteach gum bi dàta rèidh a’ sruthadh gu na tagraidhean agad.

Mu dheireadh, a 'crìochnachadh a' chòmhraidh mu chùisean stòraidh dàta, bu chòir dhuinn cuideachd iomradh a thoirt air caching. Am bu chòir dha ruith aig an aon àm air an neach-dèiligidh agus an fhrithealaiche? Dè an dàta a bhios san tasgadan agad? Agus carson? Ciamar a chuireas tu dì-dhligheachadh tasgadan air dòigh? An tèid a dhèanamh gu cunbhalach, aig amannan sònraichte? Ma tha, dè cho tric? Tha mi a’ moladh tòiseachadh air na cuspairean sin a sgrùdadh le an ath earrann an primer dealbhadh siostam a chaidh ainmeachadh.

Pàtranan Conaltraidh

siostaman air a dhèanamh suas de dhiofar phàirtean; dh’ fhaodadh iad sin a bhith nam pròiseasan eadar-dhealaichte a’ ruith taobh a-staigh an aon nód fiosaigeach, no diofar innealan a’ ruith ann am pàirtean eadar-dhealaichte den lìonra agad. Faodaidh cuid de na goireasan sin taobh a-staigh an lìonra agad a bhith prìobhaideach, ach bu chòir cuid eile a bhith poblach agus fosgailte do luchd-cleachdaidh a gheibh cothrom orra bhon taobh a-muigh.

Feumar dèanamh cinnteach gu bheil na goireasan sin air an conaltradh ri chèile, a bharrachd air iomlaid fiosrachaidh eadar an siostam gu lèir agus an saoghal a-muigh. Ann an co-theacsa dealbhadh shiostaman, an seo a-rithist tha seata de dhùbhlain ùra is sònraichte romhainn. Chì sinn mar a dh'fhaodas iad a bhith feumail tha gnìomh asyncronach a’ sruthadh, agus dè pTha measgachadh de phàtranan conaltraidh rim faighinn.

Ailtireachd Bathar-bog agus Dealbhadh Siostaman: An Dealbh Mòr agus Stiùireadh Ghoireasan

Snapshot Tony Stoddard bho Unsplash

Nuair a bhios tu ag eagrachadh conaltradh leis an t-saoghal a-muigh, tha e an-còmhnaidh glè chudromach tèarainteachd, agus feumar gabhail ris an t-solar sin cuideachd agus gu gnìomhach a leantainn.

Sgaoileadh ceangail

Chan eil mi cinnteach am bi e coltach gu bheil e reusanta don h-uile duine a bhith a’ cur a’ chuspair seo ann an roinn air leth. A dh'aindeoin sin, bidh mi a 'taisbeanadh a' bhun-bheachd seo gu mionaideach an seo, agus tha mi a 'creidsinn gu bheil an stuth anns an earrainn seo air a mhìneachadh nas mionaidiche leis an teirm "sgaoileadh ceangail".

Tha siostaman air an cruthachadh le bhith a 'ceangal mòran phàirtean gu ceart, agus bidh an conaltradh ri chèile gu tric air a chur air dòigh air bunait protocolaidhean stèidhichte, mar eisimpleir, TCP agus UDP. Ach, gu tric chan eil na protocolaidhean sin mar sin gu leòr gus coinneachadh ri feumalachdan shiostaman an latha an-diugh, a tha gu tric air an obrachadh fo luchdan àrd agus a tha cuideachd gu mòr an urra ri feumalachdan luchd-cleachdaidh. Gu tric feumar dòighean a lorg airson ceanglaichean a sgaoileadh gus dèiligeadh ri luchdan cho àrd air an t-siostam.

Tha an sgaoileadh seo stèidhichte air an fheadhainn ainmeil siostam ainm fearainn (DNS). Tha siostam mar seo a’ ceadachadh cruth-atharraichean ainm fearainn leithid robin cruinn le cuideam agus dòighean stèidhichte air latency gus an luchd a sgaoileadh.

Cothromachadh luchdan gu bunaiteach, agus tha cha mhòr a h-uile siostam eadar-lìn mòr ris a bheil sinn a’ dèiligeadh an-diugh suidhichte air cùl aon no barrachd de luchd-cothromachaidh luchdan. Bidh luchd-cothromachaidh luchdan a’ cuideachadh le bhith a’ sgaoileadh iarrtasan teachdaichean thairis air grunn shuidheachaidhean a tha rim faighinn. Bidh cothromairean luchdan a’ tighinn a-steach an dà chuid bathar-cruaidh is bathar-bog, ach, ann an cleachdadh, nas trice feumaidh tu dèiligeadh ri feadhainn bathar-bog, mar eisimpleir HAProxy и ELB. Proxies air ais gu bun-bheachdail cuideachd glè choltach ri luchd-cothromachaidh luchdan, ged a tha raon eadar a’ chiad agus an dàrna fear eadar-dhealachaidhean sònraichte. Feumar aire a thoirt do na h-eadar-dhealachaidhean sin nuair a bhios tu a’ dealbhadh siostam stèidhichte air na feumalachdan agad.

Bu chòir dhut fios a bhith agad mu dheidhinn cuideachd lìonraidhean lìbhrigidh susbaint (CDN). Is e lìonra sgaoilte cruinne de luchd-frithealaidh progsaidh a th’ ann an CDN a lìbhrigeas fiosrachadh bho nodan a tha suidhichte gu cruinn-eòlach nas fhaisge air neach-cleachdaidh sònraichte. Tha e nas fheàrr CDNn a chleachdadh ma dh’ obraicheas tu le faidhlichean statach sgrìobhte ann an JavaScript, CSS agus HTML. A bharrachd air an sin, tha seirbheisean sgòthan a bheir seachad manaidsearan trafaic cumanta an-diugh, mar eisimpleir, Manaidsear trafaic Azure, a’ toirt dhut cuairteachadh cruinneil agus latency nas lugha nuair a bhios tu ag obair le susbaint fiùghantach. Ach, mar as trice bidh seirbheisean mar seo feumail ann an cùisean far am feum thu obrachadh le seirbheisean lìn gun stàit.

Bruidhnidh sinn mu loidsig gnìomhachais. Structar loidsig gnìomhachais, sruthan gnìomh agus co-phàirtean

Mar sin, chaidh againn air bruidhinn mu dhiofar thaobhan bun-structair den t-siostam. Nas coltaiche, chan eil an neach-cleachdaidh eadhon a’ smaoineachadh mu na h-eileamaidean sin uile den t-siostam agad agus, gu fìrinneach, chan eil dragh aige mun deidhinn idir. Tha ùidh aig an neach-cleachdaidh ann an cò ris a tha e coltach a bhith ag eadar-obrachadh leis an t-siostam agad, dè ghabhas coileanadh le bhith a’ dèanamh seo, agus cuideachd mar a bhios an siostam a’ cur an gnìomh òrdughan luchd-cleachdaidh, dè agus ciamar a nì e le dàta luchd-cleachdaidh.

Mar a tha tiotal an artaigil seo a’ moladh, bha mi a’ dol a bhruidhinn mu ailtireachd bathar-bog agus dealbhadh siostam. Mar sin, cha robh dùil agam pàtrain dealbhaidh bathar-bog a chòmhdach a mhìnicheas mar a tha co-phàirtean bathar-bog air an cruthachadh. Ach, mar as motha a smaoinicheas mi mu dheidhinn, is ann as motha a tha e coltach rium gu bheil an loidhne eadar pàtrain dealbhaidh bathar-bog agus pàtrain ailtireachd gu math neo-shoilleir, agus tha an dà bhun-bheachd ceangailte gu dlùth. Gabhamaid mar eisimpleir clàradh tachartas (lorg tachartas). Aon uair ‘s gu bheil thu air gabhail ris a’ phàtran ailtireachd seo, bheir e buaidh air cha mhòr a h-uile taobh den t-siostam agad: stòradh dàta san fhad-ùine, an ìre cunbhalachd a chaidh a chleachdadh san t-siostam agad, cumadh nam pàirtean ann, msaa, msaa. Mar sin, chuir mi romhpa iomradh a thoirt air cuid de phàtranan ailtireachd a tha a’ buntainn gu dìreach ri loidsig gnìomhachais. Eadhon ged a dh’ fheumas an artaigil seo a chuingealachadh ri liosta shìmplidh, tha mi gad bhrosnachadh gus eòlas fhaighinn air agus smaoineachadh air na beachdan co-cheangailte ris na pàtrain sin. Seo a-nis:

Dòighean-obrach co-obrachail

Tha e glè eu-coltach gum faigh thu thu fhèin air pròiseact mar an neach a tha an urra ris a’ phròiseas dealbhaidh siostam a-mhàin. Air an làimh eile, is coltaiche gum feum thu eadar-obrachadh le co-obraichean a tha ag obair taobh a-staigh agus taobh a-muigh na h-obrach agad. Anns a 'chùis seo, is dòcha gum feum thu na fuasglaidhean teicneòlais taghte a mheasadh le co-obraichean, feumalachdan gnìomhachais a chomharrachadh agus tuigsinn mar as fheàrr air gnìomhan a cho-thaobhadh.

Ailtireachd Bathar-bog agus Dealbhadh Siostaman: An Dealbh Mòr agus Stiùireadh Ghoireasan

Snapshot Caitliceach bho Unsplash

Is e a’ chiad cheum tuigse cheart agus cho-roinnte a leasachadh air dè an amas gnìomhachais a tha thu a’ feuchainn ri choileanadh agus dè na pàirtean gluasadach ris am feum thu dèiligeadh. Gu sònraichte dòighean modaladh buidhne tachartasan stoirmeil (tachartas stoirmeil) cuideachadh gus am pròiseas seo a luathachadh gu mòr agus àrdachadh air na cothroman soirbheachais agad. Faodar an obair seo a dhèanamh ro no às deidh dhut mìneachadh crìochan do sheirbheisean, agus an uairsin a dhoimhneachadh mar a bhios an toradh a 'tighinn gu ìre. Stèidhichte air an ìre de sheasmhachd a thèid a choileanadh an seo, faodaidh tu cuideachd ullachadh cànan cumanta airson a’ cho-theacsa cuibhrichte anns a bheil thu ag obair. Nuair a dh'fheumas tu bruidhinn mu ailtireachd an t-siostaim agad, is dòcha gum bi e feumail dhut modail C4, air a mholadh Sìm Brown, gu sònraichte nuair a dh’ fheumas tu tuigsinn dè a dh’ fheumas tu a dhol a-steach do mhion-fhiosrachadh na duilgheadas, a ’faicinn na rudan a tha thu airson conaltradh a dhèanamh.

Is dòcha gu bheil teicneòlas aibidh eile air a’ chuspair seo nach eil cho feumail na Dealbhadh Domain Driven. Ach, bidh sinn dòigh air choireigin a’ tilleadh gu bhith a’ tuigsinn a’ chuspair, mar sin eòlas agus eòlas san raon Dealbhadh air a stiùireadh le fearann bu chòir a bhith feumail dhut.

Source: www.habr.com

Cuir beachd ann