Mabaadi'da horumarinta codsiyada casriga ah ee NGINX. Qaybta 1

Salaan saaxiibayaal. Iyadoo la filayo bilowga koorsada "Horumarka dhabarka ee PHP", dhaqan ahaan waxaanu kula wadaagnaa turjumaada waxyaabaha waxtarka leh.

Software-ku wuxuu xalliyaa dhibaatooyin badan oo maalin kasta ah, isagoo noqda mid aad u adag. Sida Marc Andreessen mar yiri, waxay cunaysaa adduunka.

Mabaadi'da horumarinta codsiyada casriga ah ee NGINX. Qaybta 1

Natiijo ahaan, habka loo sameeyo codsiyada iyo gudbinta ayaa si weyn isu bedelay dhowrkii sano ee la soo dhaafay. Kuwani waxay ahaayeen isbeddello ku saabsan cabbirka tectonic taasoo keentay mabaadi'yo go'an. Mabaadi'daani waxay caddeeyeen inay caawinayaan dhisidda koox, qaabaynta, horumarinta, iyo gaadhsiinta codsigaaga isticmaalayaasha dhamaadka.

Mabaadi'da waxaa lagu soo koobi karaa sida soo socota: Codsigu waa inuu noqdaa mid yar, shabakad-ku-salaysan, oo uu leeyahay dhisme-dhexdhexaad ah. Markaad dhisto saddexdan mabda'a, waxaad abuuri kartaa codsi adag, dhamaadka-ilaa-dhamaadka kaas oo si degdeg ah oo ammaan ah loo gaarsiin karo isticmaalaha ugu dambeeya, si fududna loo miisaami karo oo la dheerayn karo.

Mabaadi'da horumarinta codsiyada casriga ah ee NGINX. Qaybta 1

Mid kasta oo ka mid ah mabaadi'da la soo jeediyay ayaa leh dhowr arrimood oo aan ka hadli doono si aan u muujinno sida mabda'a kastaa uu gacan uga geysto hadafka ugu dambeeya ee si dhakhso ah u gudbinta codsiyo la isku halleyn karo oo sahlan in la ilaaliyo lana isticmaalo. Waxaan eegi doonaa mabaadi'da marka la barbar dhigo kuwa ka soo horjeeda si aan u caddeeyo waxa loola jeedo in la yiraahdo, "Hubi inaad isticmaasho mabda'a yaraanshaha".

Waxaan rajeyneynaa in maqaalkani uu kugu dhiirigeliyo inaad isticmaasho mabaadi'da la soo jeediyay ee lagu dhisayo codsiyada casriga ah kuwaas oo bixin doona qaab naqshadeed midaysan oo ku saabsan qaabka tiknoolajiyada casriga ah ee sii kordhaya.

Markaad dabaqdo mabaadi'dan, waxaad ogaan doontaa inaad ka faa'iidaysanayso isbeddellada ugu dambeeyay ee horumarinta software-ka, oo ay ku jiraan DevOps horumarinta codsiga iyo keenista, isticmaalka weelasha (tusaale ahaan, Docker) iyo qaab-dhismeedka weelka (tusaale ahaan, Kubureteska), adeegsiga adeeg-yaraha (oo ay ku jiraan Microservice Architecture NGINX ΠΈ qaab dhismeedka isgaarsiinta shabakada codsiyada adeeg-yaraha

Waa maxay abka casriga ah?

Codsiyada casriga ah? Xidhmada casriga ah? Waa maxay macnaha dhabta ah ee "casriga ah"?

Inta badan horumariyayaashu waxay leeyihiin kaliya faham aasaasi ah oo ku saabsan waxa codsiga casriga ahi ka kooban yahay, sidaas darteed waa lagama maarmaan in si cad loo qeexo fikraddan.

Codsiga casriga ahi waxa uu taageeraa macaamiil badan, ha ahaato is-dhexgal isticmaale oo isticmaalaya maktabadda React JavaScript, arjiga mobilada ee Android ama iOS, ama codsi ku xidha mid kale API ah. Codsiga casriga ahi waxa uu tusinayaa tiro aan xadidnayn oo macaamiil ah kuwaaso uu u bixiyo xog ama adeegyo.

Codsiga casriga ah wuxuu bixiyaa API si loo galo xogta iyo adeegyada la codsaday. API waa inuu noqdaa mid aan isbeddelayn oo joogto ah, oo aan si gaar ah loogu qorin codsi gaar ah oo macmiil gaar ah. API-ku waxa uu ka badan yahay HTTP(S) waxa uuna ku siinayaa marin u helida dhamaan shaqada laga helay GUI ama CLI.

Xogtu waa in lagu helaa qaab caadi ah, oo la wada shaqayn karo sida JSON. API wuxuu soo bandhigaa walxaha iyo adeegyada qaab cad, habaysan; tusaale ahaan, API RESTful ama GraphQL waxay bixiyaan is-dhexgal wanaagsan.

Codsiyada casriga ah waxaa lagu dhisay xirmo casri ah, iyo xirmo casri ah waa xirmooyinka taageera codsiyadan, siday u kala horreeyaan. Xirmadani waxay u oggolaanaysaa horumariyaha inuu si fudud u abuuro codsi leh interface HTTP iyo cad cad oo API ah. Habka aad dooratay ayaa u ogolaanaya codsigaaga inuu si fudud u aqbalo oo u diro xogta qaabka JSON. Si kale haddii loo dhigo, xirmada casriga ah waxay u dhigantaa canaasiirta Codsiga Laba-iyo-toban-Factor ee adeegaha yar yar.

Noocyada caanka ah ee noocan ah ee xirmooyinka waxay ku saleysan yihiin Java, Python, noode, Ruby, PHP ΠΈ Go. Dhismaha Microservice NGINX waxay ka dhigan tahay tusaale xirmo casri ah oo lagu hirgeliyay mid kasta oo ka mid ah luqadaha la sheegay.

Fadlan ogow in aanan u doodin hab adeeg-yar oo keliya. Qaar badan oo idinka mid ah waxay la shaqeeyaan monoliths kuwaas oo u baahan inay horumariyaan, halka kuwa kale ay la tacaalayaan codsiyada SOA kuwaas oo ballaarinaya oo u koraya si ay u noqdaan codsiyada adeeg-yaraha. Weli qaar kale waxay u socdaan codsiyada aan server-ka lahayn, qaarna waxay fulinayaan isku-darka kuwa kore. Mabaadi'da lagu qeexay qodobkan waxay khuseeyaan mid kasta oo ka mid ah nidaamyadan oo leh wax yar oo isbeddel ah.

Mabaadi'da

Hadda oo aan haysanno faham aasaasi ah oo ku saabsan waxa ay yihiin codsiga casriga ah iyo xirmooyinka casriga ah, waa markii aan u dhex geli lahayn qaab-dhismeedka iyo mabaadi'da naqshadeynta kuwaas oo si fiican kuugu adeegi doona qaabeynta, hirgelinta, iyo ilaalinta codsiga casriga ah.

Mid ka mid ah mabaadi'da ayaa ah "dhis apps yar", aan u wacno mabda'a yaraanshaha. Waxaa jira codsiyo aad u adag oo cajiib ah oo leh qaybo badan oo dhaqdhaqaaq ah. Taa baddalkeeda, samaynta arji ka kooban qaybo yaryar oo kala duwan waxay sahlaysaa naqshadaynta, dayactirka, iyo isticmaalka guud ahaan. (Ogsoonow in aan nidhi "wuxuu ka dhigayaa mid fudud" oo aan "ka dhigin mid fudud").

Mabda'a labaad waa in aan kordhin karno wax soo saarka horumarinta annaga oo ka caawinayna in ay diiradda saaraan sifooyinka ay horumarinayaan, iyaga oo ka xoreynaya inay ka welwelaan kaabayaasha iyo CI / CD inta lagu jiro hirgelinta. Markaa, si kooban, habkayaga horumariye-oriented.

Ugu dambeyntii, wax kasta oo ku saabsan codsigaaga waa in lagu xidhaa shabakada. 20kii sano ee la soo dhaafay, waxaan si aad ah ugu hormarnay dhanka mustaqbal isku xiran maadaama shabakadaha ay noqdeen kuwa aad u dheereeya oo codsiyadu ay noqdeen kuwo aad u adag. Sidaan horey u soo aragnay, codsiga casriga ah waa in loo isticmaalo shabakadaha macaamiil badan oo kala duwan. Dalbashada fikirka shabakada qaab dhismeedka waxay leedahay faa'iidooyin la taaban karo oo ku habboon mabda'a yaraanshaha iyo fikradda habka, horumariye-oriented.

Haddii aad mabaadi'daan maskaxda ku hayso markaad naqshadaynayso oo aad fulinayso codsiga, waxaad yeelan doontaa faa'iido gaar ah horumarinta iyo keenista alaabtaada.

Bal aan si faahfaahsan u eegno saddexdan qodob.

Mabda'a yaraanshaha

Way adag tahay in maskaxda bini'aadamku ay mar qudha gartaan xog badan. Cilmi-nafsiga, ereyga culeyska garashada waxaa loola jeedaa tirada guud ee dadaalka maskaxda ee loo baahan yahay in lagu hayo macluumaadka xusuusta. Yaraynta culeyska garashada ee horumariyayaashu waa mudnaanta sababtoo ah waxay markaas diiradda saari karaan xallinta dhibaatada halkii ay ku hayn lahaayeen qaabka adag ee hadda jira ee codsiga oo dhan iyo sifooyinka lagu horumarinayo madaxooda.

Mabaadi'da horumarinta codsiyada casriga ah ee NGINX. Qaybta 1

Codsiyada waxaa loo burburiyaa sababaha soo socda awgood:

  • Yaraynta culeyska garashada ee horumariyeyaasha;
  • Dardargelinta iyo fududaynta imtixaanka;
  • Gaadhida degdega ah ee isbeddelada codsiga.


Waxaa jira dhowr siyaabood oo lagu dhimi karo culeyska garashada ee horumariyeyaasha, tani waa halka mabda'a yareynta uu soo galo ciyaarta.

Haddaba, saddex siyaabood oo lagu dhimo culayska garashada:

  1. Yaree waqtiga xaddidan ee ay tahay in ay tixgeliyaan marka ay horumarinayaan muuqaal cusub - wakhtiga gaaban ee gaaban, ayaa hoos u dhigaya culeyska garashada.
  2. Iska yaree xadiga koodhka lagu shaqaynayo wakhti - kood yar - culays yar.
  3. Fududee habka aad ku samaynayso isbeddello kordhinta codsigaaga.

Wakhtiyada horumarinta oo la dhimay

Aynu dib ugu noqono waayihii habka waterfall waxa uu ahaa halbeega habka horumarinta, iyo wakhtiyada lix bilood ilaa laba sano ee horumarinta ama cusboonaysiinta arjiga ayaa ahaa dhaqan caadi ah. Caadi ahaan, injineeradu waxay marka hore akhrin doonaan dukumeentiyada khuseeya sida shuruudaha alaabta (PRD), dukumeentiga tixraaca nidaamka (SRD), qorshaha dhismaha, oo bilaabi doona inay ku daraan dhammaan waxyaalahan hal qaab oo garasho ah sida ku qoran koodka. Sida shuruudaha, iyo sidaas darteed qaab-dhismeedku, isbeddelay, dadaal weyn ayaa la sameeyay si kooxda oo dhan loola socodsiiyo wixii ku saabsan qaabka garashada. Xaaladda ugu xun, habkani wuxuu si fudud u curyaami karaa shaqada.

Isbeddelka ugu weyn ee habka horumarinta codsigu wuxuu ahaa hordhaca habka agile. Mid ka mid ah sifooyinka ugu muhiimsan ee habka agile - Tani waa horumar isdaba joog ah. Taa baddalkeeda, tani waxay keenaysaa hoos u dhac ku yimaada culeyska garashada ee injineerada. Halkii looga baahan lahaa kooxda horumarinta si ay u hirgeliyaan codsiga hal wareeg oo dheer, agile Habkani wuxuu kuu ogolaanayaa inaad diirada saarto qadar yar oo kood ah oo si degdeg ah loo tijaabin karo oo la geyn karo, adigoo sidoo kale helaya jawaab celin. Culayska garashada ee codsigu waxa uu ka soo wareegay muddo lix bilood ah ilaa laba sano, oo leh cadad aad u tiro badan oo tilmaamo ah, laba toddobaad oo ku daris ama isbeddel ah, iyada oo la beegsanayo fahamka fidsan ee codsiga weyn.

U beddelashada diiradda codsi weyn oo loo beddelo sifooyin yaryar oo gaar ah oo lagu dhammaystiri karo sprint laba toddobaad ah, ka hor inta aan la eegin wax ka badan hal sifo oo ka mid ah sprint soo socda maskaxda waa isbeddel weyn. Tani waxay suurtogal ka dhigtay in la kordhiyo wax soo saarka horumarinta iyada oo la yareynayo culeyska garashada, kaas oo si joogto ah isu beddelaya.

Habka agile Codsiga kama dambaysta ah ayaa la filayaa inuu noqdo nooc wax yar laga beddelay oo fikradda asalka ah, sidaa darteed barta horumarinta kama dambaysta ah waa daruuri madmadow. Natiijooyinka sprint kasta oo gaar ah oo keliya ayaa noqon kara mid cad oo sax ah.

Koodhadhka yar yar

Talaabada xigta ee lagu dhimayo culayska garashada waa in la dhimo saldhiga koodhka. Caadi ahaan, codsiyada casriga ahi waa kuwo aad u baaxad weynβ€”awood adag, codsiga ganacsigu waxa uu ka koobnaan karaa kumanaan faylal iyo boqollaal kun oo xariiq oo kood ah. Iyada oo ku xidhan habaynta faylasha, xidhiidhada iyo ku-tiirsanaanta u dhexeeya koodka iyo faylalka ayaa laga yaabaa inay muuqdaan ama aanay muuqan. Xataa ciribtirka fulinta koodka lafteedu waxay noqon kartaa dhibaato, iyadoo ku xidhan maktabadaha la isticmaalo iyo sida wanaagsan ee aaladaha wax-ka-hortagga u kala soocaan maktabadaha/ baakadaha/modules-ka iyo koodka isticmaalaha.

Dhisidda qaabka maskaxeed ee shaqaynaysa ee code-ka codsigu waxay qaadan kartaa wakhti aad u badan, iyada oo mar kale culays garasho weyn saaraysa horumariyaha. Tani waxay si gaar ah u tahay codebases monolithic, halkaas oo ay jirto tiro badan oo kood ah, isdhexgalka ka dhexeeya qaybaha shaqada si cad looma qeexin, kala-soocida walxaha dareenka ayaa inta badan mugdiga ah sababtoo ah xuduudaha shaqeyntu lama ixtiraamo.

Hal dariiqo oo wax ku ool ah oo lagu yareeynayo culeyska garashada ee injineerada waa in loo guuro qaab-dhismeedka adeeg-yaraha. Habka adeeg-yaraha, adeeg kastaa wuxuu diiradda saarayaa hal hawlood; Macnaha adeeggu inta badan waa la qeexaa waana la fahmi karaa. Xuduudaha adeeggu sidoo kale waa cad yihiin - xasuusnoow in xiriirka adeegga lagu fuliyo API, sidaas darteed xogta hal adeeg ayaa si fudud loogu wareejin karaa mid kale.

La falgalka adeegyada kale waxa ay inta badan ku kooban tahay dhawr adeeg oo adeegsade ah iyo dhawr adeeg bixiyayaasha isticmaala wicitaanada API fudud oo nadiif ah, sida REST. Tani waxay ka dhigan tahay in culeyska garashada ee injineerka uu si weyn hoos ugu dhacay. Caqabadda ugu weyn ayaa ah fahamka qaabka is dhexgalka adeegga iyo sida wax kala beddelashada ay uga dhacaan adeegyo badan. Ugu dambeyntii, adeegsiga adeeg-yaraha waxay yareysaa culeyska garashada iyadoo la yareynayo tirada koodka, qeexidda xuduudaha adeegga ee cad, iyo bixinta aragtida xiriirka adeegsadaha iyo bixiyaha.

Isbeddelo yar yar oo kordhay

Qodobka ugu dambeeya ee mabda'a wax yar waa maaraynta isbeddelka. Waxay si gaar ah u soo jiidanaysaa horumariyayaashu inay eegaan saldhigga koodhka (xitaa laga yaabee inay iyagu leeyihiin, koodkii hore) oo ay yidhaahdaan, "Tani waa wax xun, waxaan u baahanahay inaan dib u qorno waxan oo dhan." Mar waa go'aan sax ah, marna ma aha. Waxay culeyska isbeddelka qaabka caalamiga ah dul saartaa kooxda horumarinta, taas oo markaa keenta culeys weyn oo garasho. Way fiicantahay in injineeradu ay diirada saaraan isbeddelada ay samayn karaan inta lagu jiro orodka, si markaas ay u soo saaraan shaqada lagama maarmaanka ah waqti ku habboon, inkastoo si tartiib tartiib ah. Alaabta u dambaysaa waa inay u ekaataa tii hore loo sii qorsheeyey, laakiin leh wax ka beddel iyo tijaabin ku habboon baahiyaha macmiilka.

Marka dib loo qorayo qaybo badan oo kood ah, mararka qaarkood suurtagal maaha in si dhakhso ah loo keeno isbeddel sababtoo ah ku tiirsanaanta nidaamka kale ayaa soo galaya. Si loo xakameeyo socodka isbeddelada, waxaad isticmaali kartaa qarinta sifada. Asal ahaan, tani waxay ka dhigan tahay in shaqeyntu ay ku jirto wax soo saarka, laakiin laguma heli karo goobaha doorsoomayaasha deegaanka (env-var) ama qaab kasta oo qaabeynta. Haddii code-ku dhaafo dhammaan hababka xakamaynta tayada, waxaa laga yaabaa inay ku dhamaato wax soo saarka xaalad qarsoon. Si kastaba ha ahaatee, istaraatiijiyadani waxay shaqeysaa kaliya haddii sifada ugu dambeyntii karti loo yeesho. Haddii kale, waxa kaliya oo ay ku qasmi doontaa koodka waxayna ku dari doontaa culays garasho oo horumariyahu ay tahay inuu la qabsado si uu u noqdo mid wax soo saar leh. Beddelka maaraynta iyo isbeddellada kordhinta laftoodu waxay caawiyaan inay culayska garashada ee horumariyayaashu ku hayaan heer la heli karo.

Injineerada waa in ay ka gudbaan dhibaatooyin badan xitaa marka ay si fudud u fulinayaan hawlo dheeraad ah. Waxay noqon lahayd mid caqli-gal ah maamulku inuu yareeyo culeyska shaqada ee aan loo baahnayn ee kooxda si uu diiradda u saaro walxaha muhiimka ah ee shaqeynta. Waxaa jira saddex shay oo aad samayn karto si aad u caawiso kooxdaada horumarineed:

  1. Isticmaal habka agile, si loo xaddido wakhtiga ay kooxdu tahay inay diiradda saaraan sifooyinka muhiimka ah.
  2. U hirgeli codsigaaga sidii dhowr adeeg oo yaryar. Tani waxay xaddidi doontaa tirada astaamaha la soo bandhigay waxayna xoojin doontaa xuduudaha ay ku jiraan culeyska garashada marka la shaqeynayo.
  3. Doorbida isbeddellada kordhinta kuwa waaweyn, kuwa aan shaqaynayn, beddel qaybo yaryar oo kood ah. Adeegso qarinta sifada si aad u hirgaliso isbedelada xataa hadii ayna isla markiiba muuqan doonin marka lagu daro.

Haddii aad ku dabaqdo mabda'a yaraynta shaqadaada, kooxdaadu waxay noqon doontaa mid aad u faraxsan, si fiican ayay diiradda u saari doontaa bixinta sifooyinka lagama maarmaanka ah, waxayna u badan tahay inay si degdeg ah u soo saaraan isbeddellada tayada. Laakiin tani macnaheedu maaha in shaqadu aanay noqon karin mid aad u adag, marmarka qaarkood, liddi ku ah, soo bandhigida shaqeynta cusub waxay u baahan tahay wax ka beddelka adeegyo badan oo habkani wuxuu noqon karaa mid ka adag midka la midka ah ee dhismaha monolithic. Si kastaba ha noqotee, faa'iidooyinka isticmaalka habka ayaa waxyar u qalma.

Dhamaadka qeybta koowaad.

Waxaan dhawaan daabici doonaa qaybta labaad ee tarjumaada, laakiin hadda waxaan sugeynaa faallooyinkaaga waana kugu martiqaadeynaa Maalinta Furan, taasoo dhici doonta maanta 20.00.

Source: www.habr.com

Add a comment