Bho sgriobtaichean chun àrd-ùrlar againn fhèin: mar a rinn sinn fèin-ghluasad air leasachadh aig CIAN

Bho sgriobtaichean chun àrd-ùrlar againn fhèin: mar a rinn sinn fèin-ghluasad air leasachadh aig CIAN

Aig RIT 2019, rinn ar co-obraiche Alexander Korotkov aithisg mu dheidhinn fèin-ghluasad leasachaidh aig CIAN: gus beatha is obair a dhèanamh nas sìmplidhe, bidh sinn a’ cleachdadh an àrd-ùrlar Integro againn fhèin. Bidh e a ’cumail sùil air cearcall beatha ghnìomhan, a’ faochadh luchd-leasachaidh bho ghnìomhachd àbhaisteach agus a ’lughdachadh gu mòr an àireamh de bhiteagan ann an cinneasachadh. Anns an dreuchd seo, cuiridh sinn ri aithisg Alexander agus innsidh sinn dhut mar a chaidh sinn bho sgriobtaichean sìmplidh gu bhith a’ cothlamadh thoraidhean stòr fosgailte tron ​​​​àrd-ùrlar againn fhèin agus na bhios an sgioba fèin-ghluasaid fa-leth againn a’ dèanamh.
 

Ìre neoni

“Chan eil leithid de rud ann ri ìre neoni, chan eil fios agam air an leithid”
Maighstir Shifu bhon fhilm "Kung Fu Panda"

Thòisich fèin-ghluasad aig CIAN 14 bliadhna às deidh a’ chompanaidh a stèidheachadh. Aig an àm sin bha 35 duine anns an sgioba leasachaidh. Doirbh a chreidsinn, ceart? Gu dearbh, bha fèin-ghluasad ann an cruth air choreigin, ach thòisich stiùireadh air leth airson amalachadh leantainneach agus lìbhrigeadh còd a’ tighinn air adhart ann an 2015. 

Aig an àm sin, bha monolith mòr againn de Python, C # agus PHP, air an cleachdadh air frithealaichean Linux / Windows. Gus an uilebheist seo a chleachdadh, bha seata de sgriobtaichean againn a ruith sinn le làimh. Bha co-chruinneachadh an monolith ann cuideachd, a thug pian agus fulangas mar thoradh air còmhstri nuair a bha iad a 'ceangal gheugan, a' ceartachadh lochdan, agus ag ath-thogail "le seata de ghnìomhan eadar-dhealaichte san togail." Bha pròiseas nas sìmplidhe a’ coimhead mar seo:

Bho sgriobtaichean chun àrd-ùrlar againn fhèin: mar a rinn sinn fèin-ghluasad air leasachadh aig CIAN

Cha robh sinn toilichte le seo, agus bha sinn airson pròiseas togail agus cleachdadh ath-aithris, fèin-ghluasadach agus a ghabhas riaghladh a thogail. Airson seo, bha feum againn air siostam CI/CD, agus thagh sinn eadar an dreach an-asgaidh de Teamcity agus an dreach an-asgaidh de Jenkins, leis gun do dh’ obraich sinn còmhla riutha agus bha an dithis a’ freagairt oirnn a thaobh an t-seata ghnìomhan. Thagh sinn Teamcity mar thoradh nas ùire. Aig an àm sin, cha robh sinn fhathast air ailtireachd microservice a chleachdadh agus cha robh dùil againn ri àireamh mhòr de ghnìomhan agus phròiseactan.

Tha sinn a 'tighinn chun a' bheachd air an t-siostam againn fhìn

Cha tug buileachadh Teamcity air falbh ach pàirt den obair làimhe: is e na tha air fhàgail a bhith a’ cruthachadh Iarrtasan Tarraing, adhartachadh chùisean a rèir inbhe ann an Jira, agus taghadh chùisean airson an leigeil ma sgaoil. Cha b’ urrainn don t-siostam Teamcity dèiligeadh ri seo tuilleadh. Bha e riatanach an t-slighe airson tuilleadh fèin-ghluasaid a thaghadh. Bheachdaich sinn air roghainnean airson obrachadh le sgriobtaichean ann an Teamcity no atharrachadh gu siostaman fèin-ghluasaid treas-phàrtaidh. Ach aig a’ cheann thall cho-dhùin sinn gu robh feum againn air an sùbailteachd as motha, nach urrainn ach ar fuasgladh fhèin a thoirt seachad. Seo mar a nochd a’ chiad dreach den t-siostam fèin-ghluasaid a-staigh ris an canar Integro.

Bidh Teamcity a’ dèiligeadh ri fèin-ghluasad aig ìre cur air bhog na pròiseasan togail is cleachdadh, fhad ‘s a bha Integro a’ cuimseachadh air fèin-ghluasad àrd-ìre de phròiseasan leasachaidh. Bha e riatanach obair a chur còmhla ri cùisean ann an Jira le bhith a’ giullachd còd stòr co-cheangailte ann am Bitbucket. Aig an ìre seo, thòisich Integro air a shruth-obrach fhèin airson a bhith ag obair le gnìomhan de dhiofar seòrsa. 

Mar thoradh air an àrdachadh ann an fèin-ghluasad ann am pròiseasan gnìomhachais, tha an àireamh de phròiseactan agus ruith ann an Teamcity air a dhol suas. Mar sin thàinig duilgheadas ùr: cha robh aon eisimpleir Teamcity an-asgaidh gu leòr (3 riochdairean agus 100 pròiseact), chuir sinn eisimpleir eile ris (3 riochdairean a bharrachd agus 100 pròiseact), an uairsin fear eile. Mar thoradh air an sin, thàinig sinn gu crìch le siostam de ghrunn bhuidhnean, a bha duilich a riaghladh:

Bho sgriobtaichean chun àrd-ùrlar againn fhèin: mar a rinn sinn fèin-ghluasad air leasachadh aig CIAN

Nuair a dh’ èirich ceist 4mh eisimpleir, thuig sinn nach b’ urrainn dhuinn cumail oirnn a’ fuireach mar seo, leis nach robh na cosgaisean iomlan airson taic a thoirt do 4 cùisean taobh a-staigh crìochan sam bith tuilleadh. Dh ’èirich a’ cheist mu bhith a ’ceannach Teamcity pàighte no a’ taghadh Jenkins an-asgaidh. Rinn sinn àireamhachadh air suidheachaidhean agus planaichean fèin-ghluasaid agus cho-dhùin sinn gum biodh sinn beò air Jenkins. Às deidh beagan sheachdainean, thionndaidh sinn gu Jenkins agus chuir sinn às do chuid den cheann goirt a bha co-cheangailte ri bhith a’ cumail suas iomadh suidheachadh Teamcity. Mar sin, bha e comasach dhuinn fòcas a chuir air a bhith a’ leasachadh Integro agus a’ gnàthachadh Jenkins dhuinn fhìn.

Le fàs fèin-ghluasad bunaiteach (ann an cruth cruthachadh fèin-ghluasadach de Iarrtasan Pull, cruinneachadh agus foillseachadh còmhdach Còd agus sgrùdaidhean eile), tha miann làidir ann fiosan làimhe a thrèigsinn cho mòr ‘s as urrainn agus an obair seo a thoirt do innealan-fuadain. A bharrachd air an sin, thòisich a 'chompanaidh a' gluasad gu microservices taobh a-staigh a 'chompanaidh, a dh' fheumadh sgaoilidhean tric, agus air leth bho chèile. Seo mar a thàinig sinn gu sgaoilidhean fèin-ghluasadach de na microservices againn mean air mhean (tha sinn an-dràsta a’ leigeil a-mach am monolith le làimh air sgàth cho iom-fhillte ‘s a tha a’ phròiseas). Ach, mar as àbhaist, dh'èirich iom-fhillteachd ùr. 

Bidh sinn a’ dèanamh deuchainn fèin-ghluasadach

Bho sgriobtaichean chun àrd-ùrlar againn fhèin: mar a rinn sinn fèin-ghluasad air leasachadh aig CIAN

Mar thoradh air fèin-ghluasad sgaoilidhean, tha pròiseasan leasachaidh air luathachadh, gu ìre mar thoradh air leum ann an cuid de ìrean deuchainn. Agus lean seo gu call sealach càileachd. Tha e coltach gu bheil e beag, ach còmhla ri luathachadh sgaoilidhean, bha e riatanach am modh leasachadh toraidh atharrachadh. Bha e riatanach smaoineachadh air fèin-ghluasad deuchainn, a 'toirt a-steach uallach pearsanta (an seo tha sinn a' bruidhinn mu dheidhinn "gabhail ris a 'bheachd anns a' cheann", chan e cìsean airgid) an leasaiche airson a 'chòd a chaidh a leigeil ma sgaoil agus na bugaichean a th' ann, a bharrachd air a 'cho-dhùnadh. leigeil ma sgaoil / gun a bhith a’ leigeil ma sgaoil gnìomh tro chleachdadh fèin-ghluasadach. 

A’ cur às do dhuilgheadasan càileachd, thàinig sinn gu dà cho-dhùnadh cudromach: thòisich sinn air deuchainnean canary a dhèanamh agus thug sinn a-steach sgrùdadh fèin-ghluasadach air cùl na mearachd le freagairt fèin-ghluasadach dha cus. Rinn a’ chiad fhuasgladh e comasach mearachdan follaiseach a lorg mus deach an còd a leigeil ma sgaoil gu cinneasachadh, lughdaich an dàrna fear an ùine freagairt do dhuilgheadasan cinneasachaidh. Bidh mearachdan, gu dearbh, a’ tachairt, ach bidh sinn a’ caitheamh a’ mhòr-chuid den ùine agus den oidhirp chan ann air an ceartachadh, ach air an lughdachadh. 

Sgioba fèin-ghluasad

Tha luchd-obrach de 130 leasaiche againn an-dràsta, agus tha sinn a’ leantainn fàs. Tha an sgioba amalachaidh leantainneach agus lìbhrigeadh còd (ris an canar an sgioba Deploy and Integration no DI an-seo) air a dhèanamh suas de dhaoine 7 agus ag obair ann an 2 stiùireadh: leasachadh àrd-ùrlar fèin-ghluasaid Integro agus DevOps. 

Tha DevOps an urra ri àrainneachd Dev / Beta air làrach CIAN, an àrainneachd Integro, a’ cuideachadh luchd-leasachaidh gus fuasgladh fhaighinn air duilgheadasan agus a’ leasachadh dhòighean ùra air àrainneachdan sgèile. Bidh an stiùireadh leasachaidh Integro a’ dèiligeadh ri gach cuid Integro fhèin agus seirbheisean co-cheangailte ris, mar eisimpleir, plugins airson Jenkins, Jira, Confluence, agus cuideachd a’ leasachadh goireasan taice agus tagraidhean airson sgiobaidhean leasachaidh. 

Bidh an sgioba DI ag obair còmhla ris an sgioba Platform, a bhios a’ leasachadh ailtireachd, leabharlannan, agus dòighean leasachaidh air an taobh a-staigh. Aig an aon àm, faodaidh leasaiche sam bith taobh a-staigh CIAN cur ri fèin-ghluasad, mar eisimpleir, meanbh-fèin-ghluasad a dhèanamh a fhreagras air feumalachdan na sgioba no beachd inntinneach a cho-roinn air mar a nì thu fèin-ghluasad eadhon nas fheàrr.

Cèic sreath de fèin-ghluasad aig CIAN

Bho sgriobtaichean chun àrd-ùrlar againn fhèin: mar a rinn sinn fèin-ghluasad air leasachadh aig CIAN

Faodar a h-uile siostam a tha an sàs ann an fèin-ghluasad a roinn ann an grunn shreathan:

  1. Siostaman taobh a-muigh (Jira, Bitbucket, msaa). Bidh sgiobaidhean leasachaidh ag obair còmhla riutha.
  2. Àrd-ùrlar Integro. Mar as trice, cha bhith luchd-leasachaidh ag obair leis gu dìreach, ach is e sin a chumas a h-uile fèin-ghluasad a ’dol.
  3. Seirbheisean lìbhrigidh, orcastra agus lorg (mar eisimpleir, Jeknins, Consul, Nomad). Leis an cuideachadh, bidh sinn a’ cleachdadh còd air frithealaichean agus a’ dèanamh cinnteach gu bheil seirbheisean ag obair còmhla.
  4. Sreath corporra (frithealaichean, OS, bathar-bog co-cheangailte). Tha an còd againn ag obair aig an ìre seo. Faodaidh seo a bhith an dàrna cuid na fhrithealaiche corporra no na fhear brìgheil (LXC, KVM, Docker).

Stèidhichte air a’ bhun-bheachd seo, bidh sinn a’ roinn raointean dleastanais taobh a-staigh sgioba DI. Tha a’ chiad dà ìre ann an raon uallach stiùireadh leasachaidh Integro, agus tha an dà ìre mu dheireadh mu thràth ann an raon uallach DevOps. Leigidh an dealachadh seo leinn fòcas a chuir air gnìomhan agus chan eil e a’ cur bacadh air eadar-obrachadh, leis gu bheil sinn faisg air a chèile agus an-còmhnaidh ag iomlaid eòlas agus eòlas.

Slàn

Nach cuir sinn fòcas air Integro agus tòisichidh sinn leis a’ chruach teicneòlais:

  • CentOS 7
  • Docker + Nomad + Consul + Vault
  • Java 11 (bidh an seann monolith Integro fhathast air Java 8)
  • Spring Boot 2.X + Spring Cloud Config
  • PostgreSql 11
  • CoineanachMQ 
  • Ignite Apache
  • Camunda (stèidhichte)
  • Grafana + Graphite + Prometheus + Jaeger + ELK
  • UI lìn: React (CSR) + MobX
  • SSO: Clobhsa

Bidh sinn a’ cumail ri prionnsapal leasachadh microservice, ged a tha dìleab againn ann an cruth monolith de dhreach tràth de Integro. Bidh gach meanbh-sheirbheis a’ ruith anns a’ ghobhar Docker aige fhèin, agus bidh na seirbheisean a’ conaltradh ri chèile tro iarrtasan HTTP agus teachdaireachdan RabbitMQ. Bidh microservices a’ lorg a chèile tro Consul agus a’ dèanamh iarrtas thuige, a’ dol seachad air cead tro SSO (Keycloak, OAuth 2/OpenID Connect).

Bho sgriobtaichean chun àrd-ùrlar againn fhèin: mar a rinn sinn fèin-ghluasad air leasachadh aig CIAN

Mar eisimpleir fìor, beachdaich air eadar-obrachadh le Jenkins, anns a bheil na ceumannan a leanas:

  1. Tha am meanbh-sheirbheis riaghlaidh sruth-obrach (ris an canar am microservice Flow an-seo) ag iarraidh togalach a ruith ann an Jenkins. Gus seo a dhèanamh, bidh e a’ cleachdadh Consul gus IP:PORT a’ mhicro-sheirbheis a lorg airson amalachadh le Jenkins (air an ainmeachadh an-seo mar Jenkins microservice) agus a’ cur iarrtas neo-chinnteach thuige gus an togail ann an Jenkins a thòiseachadh.
  2. Às deidh iarrtas fhaighinn, bidh am microservice Jenkins a’ gineadh agus a ’freagairt le ID Obrach, a dh’ fhaodar a chleachdadh an uairsin gus toradh na h-obrach aithneachadh. Aig an aon àm, bidh e a’ piobrachadh an togail ann an Jenkins tro ghairm REST API.
  3. Bidh Jenkins a’ dèanamh an togail agus, às deidh a chrìochnachadh, bidh e a’ cur duilleag-lìn leis na toraidhean gu bàs gu microservice Jenkins.
  4. Bidh am meanbh-sheirbheis Jenkins, às deidh dha an webhook fhaighinn, a ’gineadh teachdaireachd mu bhith a’ crìochnachadh giollachd iarrtasan agus a ’ceangal na toraidhean cur gu bàs ris. Thèid an teachdaireachd a chaidh a chruthachadh a chuir gu ciudha RabbitMQ.
  5. Tro RabbitMQ, bidh an teachdaireachd foillsichte a’ ruighinn am meanbh-sheirbheis Flow, a bhios ag ionnsachadh mu thoradh a bhith a’ giullachd a ghnìomh le bhith a’ maidseadh ID na h-Obrach bhon iarrtas agus an teachdaireachd a fhuaireadh.

A-nis tha timcheall air 30 microservices againn, a dh'fhaodar a roinn ann an grunn bhuidhnean:

  1. Riaghladh rèiteachaidh.
  2. Fiosrachadh agus eadar-obrachadh le luchd-cleachdaidh (teachdairean, post).
  3. Ag obair le còd stòr.
  4. Amalachadh le innealan cleachdadh (jenkins, nomad, consul, msaa).
  5. Sgrùdadh (sgaoilidhean, mearachdan, msaa).
  6. Goireasan lìn (UI airson àrainneachdan deuchainn a riaghladh, cruinneachadh staitistig, msaa).
  7. Amalachadh le rianadairean gnìomh agus siostaman coltach ris.
  8. Stiùireadh sruth-obrach airson diofar ghnìomhan.

Gnìomhan sruth-obrach

Bidh Integro ag fèin-ghluasad gnìomhan co-cheangailte ri cuairt-beatha gnìomh. Ann an teirmean nas sìmplidhe, bithear a’ tuigsinn cearcall beatha gnìomh mar shruth-obrach gnìomh ann an Jira. Tha grunn atharrachaidhean sruth-obrach anns na pròiseasan leasachaidh againn a rèir a’ phròiseict, an seòrsa gnìomh agus na roghainnean a chaidh a thaghadh ann an gnìomh sònraichte. 

Bheir sinn sùil air an t-sruth-obrach a bhios sinn a’ cleachdadh as trice:

Bho sgriobtaichean chun àrd-ùrlar againn fhèin: mar a rinn sinn fèin-ghluasad air leasachadh aig CIAN

Anns an dealbh, tha an gèar a 'sealltainn gu bheil eadar-ghluasad air a ghairm gu fèin-obrachail le Integro, fhad' sa tha am figear daonna a 'sealltainn gu bheil an gluasad air a ghairm le làimh le neach. Bheir sinn sùil air grunn shlighean as urrainn gnìomh a ghabhail san t-sruth-obrach seo.

Deuchainn làimhe gu tur air DEV + BETA às aonais deuchainnean canary (mar as trice seo mar a bhios sinn a’ leigeil ma sgaoil monolith):

Bho sgriobtaichean chun àrd-ùrlar againn fhèin: mar a rinn sinn fèin-ghluasad air leasachadh aig CIAN

Is dòcha gu bheil measgachadh gluasaid eile ann. Aig amannan faodar an t-slighe a ghabhas cùis a thaghadh tro roghainnean ann an Jira.

Gluasad gnìomh

Bheir sinn sùil air na prìomh cheumannan a thèid a choileanadh nuair a ghluaiseas gnìomh tro shruth-obrach “DEV Testing + Canary Tests”:

1. Bidh an leasaiche no PM a 'cruthachadh a' ghnìomh.

2. Bidh an leasaiche a 'toirt a' ghnìomh gu obair. Às deidh a chrìochnachadh, bidh e ag atharrachadh gu inbhe IN REVIEW.

3. Bidh Jira a' cur Webhook gu microservice Jira (le uallach airson amalachadh le Jira).

4. Bidh microservice Jira a’ cur iarrtas chun t-seirbheis Flow (le uallach airson sruthan obrach a-staigh anns a bheil obair air a dhèanamh) gus an sruth-obrach a thòiseachadh.

5. Taobh a-staigh seirbheis Sruth:

  • Tha luchd-sgrùdaidh air an sònrachadh don ghnìomh (Microservice luchd-cleachdaidh a tha eòlach air a h-uile càil mu luchd-cleachdaidh + Jira microservice).
  • Tro microservice Source (tha fios aige mu stòran agus meuran, ach chan eil e ag obair leis a ’chòd fhèin), thathas a’ sgrùdadh stòran anns a bheil meur den chùis againn (gus an rannsachadh a dhèanamh nas sìmplidhe, tha ainm a ’mheur aig an aon àm ris a’ chùis àireamh ann an Jira). Mar as trice, chan eil ach aon mheur aig gnìomh ann an aon stòr; tha seo a’ sìmpleachadh riaghladh ciudha cleachdadh agus a’ lughdachadh ceangal eadar stòran.
  • Airson gach meur a chaidh a lorg, thèid an sreath ghnìomhan a leanas a choileanadh:

    i) Ag ùrachadh a’ phrìomh mheur (Git microservice airson obrachadh le còd).
    ii) Tha am meur air a bhacadh bho atharrachaidhean leis an leasaiche (Bitbucket microservice).
    iii) Tha Iarrtas Tarraing air a chruthachadh airson a’ mheur seo (Bitbucket microservice).
    iv) Thèid teachdaireachd mu Iarrtas Tarraing ùr a chuir gu cabadaich luchd-leasachaidh (Cuir fios gu microservice airson a bhith ag obair le fiosan).
    v) Tha gnìomhan togail, deuchainn agus cleachdadh gan tòiseachadh air DEV (Microservice Jenkins airson a bhith ag obair le Jenkins).
    vi) Ma thèid a h-uile ceum roimhe seo a chrìochnachadh gu soirbheachail, bidh Integro a’ cur a Aonta san Iarrtas Tarraing (Bitbucket microservice).

  • Tha Integro a’ feitheamh ri Aonta ann an Iarrtas Tarraing bho luchd-sgrùdaidh ainmichte.
  • Cho luath ‘s a gheibhear a h-uile cead riatanach (a’ toirt a-steach deuchainnean fèin-ghluasadach air a dhol seachad gu dearbhach), bidh Integro a ’gluasad a’ ghnìomh gu inbhe Test on Dev (Jira microservice).

6. Bidh luchd-dearbhaidh a 'dèanamh deuchainn air a' ghnìomh. Mura h-eil duilgheadas ann, thèid an obair a ghluasad chun inbhe Ready For Build.

7. Tha Integro “a’ faicinn” gu bheil an obair deiseil airson a leigeil ma sgaoil agus a’ tòiseachadh ga cleachdadh ann am modh canary (Jenkins microservice). Tha ullachadh airson leigeil ma sgaoil air a dhearbhadh le seata de riaghailtean. Mar eisimpleir, tha an obair san inbhe a tha a dhìth, chan eil glasan air gnìomhan eile, an-dràsta chan eil luchdachadh suas gnìomhach den microservice seo, msaa.

8. Tha an obair a ghluasad gu Canary inbhe (Jira microservice).

9. Bidh Jenkins a’ cur air bhog gnìomh cleachdadh tro Nomad ann am modh canary (mar as trice 1-3 suidheachaidhean) agus a’ toirt fios don t-seirbheis sgrùdaidh fuasglaidh (DeployWatch microservice) mun chleachdadh.

10. Bidh am microservice DeployWatch a’ cruinneachadh cùl-fhiosrachadh na mearachd agus a’ freagairt ris, ma tha sin riatanach. Ma thèid a dhol thairis air cùl-fhiosrachadh na mearachd (tha an ìre cùl-fhiosrachaidh air a thomhas gu fèin-ghluasadach), thèid fios a chuir gu luchd-leasachaidh tron ​​​​mhicroservice Fios. Mura h-eil an leasaiche air freagairt às deidh 5 mionaidean (cliog air Revert or Stay), thèid ath-thilleadh fèin-ghluasadach de na h-eisimpleirean canary a chuir air bhog. Mura tèid e thairis air a’ chùl-raon, feumaidh an leasaiche an cleachdadh gnìomh gu Riochdachadh a chuir air bhog le làimh (le bhith a’ briogadh air putan san UI). Mura h-eil an leasaiche taobh a-staigh 60 mionaid air an cleachdadh gu Riochdachadh a chuir air bhog, thèid na cùisean canary a thoirt air ais cuideachd airson adhbharan tèarainteachd.

11. Às deidh an cleachdadh gu Riochdachadh a chuir air bhog:

  • Tha an obair air a ghluasad gu inbhe Riochdachaidh (Jira microservice).
  • Bidh am microservice Jenkins a ’tòiseachadh air a’ phròiseas cleachdadh agus a ’toirt fios don microservice DeployWatch mun chleachdadh.
  • Bidh am microservice DeployWatch a’ dèanamh cinnteach gu bheil a h-uile inneal air Riochdachadh air ùrachadh (bha cùisean ann nuair nach deach iad uile ùrachadh).
  • Tron microservice Notify, thèid fios mu thoraidhean an cleachdadh a chuir gu Riochdachadh.

12. Bidh 30 mionaid aig luchd-leasachaidh gus gnìomh a thoirt air ais bho Riochdachadh ma lorgar giùlan microservice ceàrr. Às deidh na h-ùine seo, thèid an gnìomh a thoirt còmhla gu fèin-ghluasadach gu maighstir (Git microservice).

13. Às deidh aonachadh soirbheachail a-steach don mhaighstir, thèid inbhe na h-obrach atharrachadh gu Dùinte (Jira microservice).

Chan eil an diagram a 'leigeil a-mach gu bheil e gu tur mionaideach (ann an da-rìribh tha eadhon barrachd cheumannan), ach leigidh e leat measadh a dhèanamh air an ìre de fhilleadh a-steach do phròiseasan. Chan eil sinn den bheachd gu bheil an sgeama seo air leth freagarrach agus tha sinn ag adhartachadh pròiseasan sgaoilidh fèin-ghluasadach agus taic cleachdadh.

Dè tha ri thighinn

Tha planaichean mòra againn airson fèin-ghluasad a leasachadh, mar eisimpleir, cuir às do ghnìomhachd làimhe aig àm fiosan monolith, leasachadh sgrùdaidh rè cleachdadh fèin-ghluasadach, agus leasachadh eadar-obrachadh le luchd-leasachaidh.

Ach stadamaid an seo airson a-nis. Chòmhdaich sinn mòran chuspairean san ath-sgrùdadh fèin-ghluasaid gu uachdar, cha deach suathadh air cuid dhiubh idir, agus mar sin bidh sinn toilichte ceistean a fhreagairt. Tha sinn a 'feitheamh airson molaidhean air dè a chòmhdach gu mionaideach, sgrìobh anns na beachdan.

Source: www.habr.com

Cuir beachd ann