Sida loo cabbiro min 1 ilaa 100 isticmaalayaasha

Bilowga badan ayaa soo maray tan: dad badan oo isticmaaleyaal cusub ah ayaa maalin kasta is diiwaan geliya, kooxda horumarintuna waxay ku dhibtoonayaan inay sii wadaan adeegga.

Waa dhibaato aad u fiican in la haysto, laakiin waxaa jira macluumaad yar oo cad oo ku saabsan shabakada sida taxadarka leh loo cabbiro codsiga shabakada iyada oo aan waxba la siin boqollaal kun oo isticmaaleyaal ah. Caadi ahaan waxaa jira xalal dab-damis ah ama xalal cidhiidhi ah (iyo inta badan labadaba). Sidaa darteed, dadku waxay isticmaalaan farsamooyin la isku dhejiyay si ay u cabbiraan mashruucooda hiwaayadda wax dhab ah oo halis ah.

Aan isku dayno inaan shaandheyno macluumaadka oo aan qorno qaacidada aasaasiga ah. Waxaanu talaabo talaabo u cabiraynaa goobtayada cusub ee sawir wadaagista ee Graminsta min 1 ilaa 100 isticmaalayaasha.

Aynu qorno ficillada gaarka ah ee loo baahan yahay in la qaado marka dhegaystayaashu ay kordho 10, 100, 1000, 10 iyo 000 qof.

1 isticmaale: 1 mishiin

Ku dhawaad ​​codsi kasta, ha ahaado mareegaha ama codsiga mobilka, waxa uu leeyahay saddex qaybood oo muhiim ah:

  • API
  • database
  • macmiilka (app mobile laftiisa ama website)

Xog-ururinta waxa ay kaydisaa xog joogto ah. API wuxuu u adeegaa codsiyada xogtan iyo hareeraheeda. Macmiilku wuxuu u gudbiyaa xogta isticmaalaha.

Waxaan imid gabagabada in ay aad u fududahay in laga hadlo cabirida codsiga haddii, marka laga eego aragtida qaab dhismeedka, macmiilka iyo hay'adaha API si buuxda loo kala saaro.

Marka ugu horeysa ee aan bilowno dhisitaanka arjiga, dhammaan saddexda qaybood waxay ku socon karaan hal server. Siyaabaha qaarkood, tani waxay la mid tahay deegaankayaga horumarinta: hal injineer ayaa ku shaqeeya kaydka xogta, API, iyo macmiilka isla mishiinka.

Aragti ahaan, waxaan ku geyn karnaa daruuraha hal DigitalOcean Droplet ama AWS EC2 tusaale ahaan, sida hoos ku cad:
Sida loo cabbiro min 1 ilaa 100 isticmaalayaasha
Iyadoo taas la yiraahdo, haddii ay jiri doonaan wax ka badan hal isticmaale oo ku yaal goobta, had iyo jeer waxay macno samaynaysaa in la bixiyo lakabka xogta.

Isticmaalayaasha 10: u wareejinta xogta xogta heer gaar ah

Kala qaybinta xogta adeegyada la maareeyay sida Amazon RDS ama Database-ka la maamulo Badweynta Dijital ah waxay noo adeegi doontaa waqti dheer. Way ka qaalisan tahay is-martigelinta hal mashiin ama tusaale ahaan EC2, laakiin adeegyadan waxaad ka helaysaa kordhin badan oo faa'iido leh oo ka baxsan sanduuqa kuwaas oo mustaqbalka anfacaya: gurmad gobolo badan, akhri nuqulo, toos ah kayd, iyo in ka badan.

Tani waa sida uu nidaamku hadda u eg yahay:
Sida loo cabbiro min 1 ilaa 100 isticmaalayaasha

Isticmaalayaasha 100: u wareejinta macmiilka heer gaar ah

Nasiib wanaag, isticmaaleyaasheenii ugu horreeyay ayaa runtii jeclaa codsigayaga. Gaadiidku waxa ay noqonayaan kuwo xasiloon, markaa waa waqtigii macmiilka loo wareejin lahaa heer gaar ah. Waa in la xuso taas kala saarid hay'aduhu waa qayb muhiim ah oo ka mid ah dhisidda codsi la cabbiri karo. Sida qayb ka mid ah nidaamka ay hesho taraafig badan, waxaan u qaybin karnaa si aan u xakameyno sida adeeggu u cabbiro iyadoo lagu salaynayo qaababka taraafikada gaarka ah.

Tani waa sababta aan jeclahay in aan u maleynayo in macmiilka uu ka duwan yahay API-ga. Tani waxay ka dhigaysaa mid aad u fudud in laga fikiro horumarinta goobo badan: web, mobile web, iOS, Android, codsiyada desktop, adeegyada xisbiga saddexaad, iwm. Dhammaantood waa macaamiisha isticmaalaya API isku mid ah.

Tusaale ahaan, hadda isticmaaleyaasheenna waxay inta badan weydiiyaan inay sii daayaan arjiga mobilada. Haddii aad kala saarto macmiilka iyo hay'adaha API, tani way fududaanaysaa.

Tani waa sida nidaamkan oo kale u eg yahay:

Sida loo cabbiro min 1 ilaa 100 isticmaalayaasha

1000 isticmaale: ku dar culeyska dheelitirka

Waxyaabo kor u eegayaan. Isticmaalayaasha Graminsta ayaa soo galinaya sawiro aad iyo aad u badan. Tirada isdiiwaan gelinta ayaa sidoo kale sii kordheysa. Server-keena keligiis API waxa uu ku adag yahay in uu la socdo dhammaan taraafikada. U baahan bir badan!

Isku-dheellitirka culeysku waa fikrad aad u awood badan. Fikradda muhiimka ah ayaa ah in aan hor dhigno isku-dheellitirka culeyska API-ga, waxayna u qaybisaa taraafikada tusaale ahaan adeegga shakhsi ahaaneed. Tani waa sida aan u cabbirno si siman, taasoo la macno ah inaan ku darno adeegayaal badan oo leh kood isku mid ah, kordhinta tirada codsiyada aan ka shaqeyn karno.

Waxaanu dhigaynaa miisaan-dheelliyaal kala duwan oo hor leh macmiilka shabakadda iyo horteeda API-ga. Tani waxay ka dhigan tahay inaad socodsiin karto tusaalooyin badan oo socodsiiya koodka API iyo koodhka macmiilka shabakadda. Isku-dheellitirka culeyska ayaa ku toosin doona codsiyada server-ka ka yar rarka.

Halkan waxaan ku helnaa faa'iido kale oo muhiim ah - shaqo-ka-celinta. Marka hal tusaale guul-darraysto (laga yaabo in la raro ama shil dhaco), waxaa nala haray kuwa kale oo sii wada ka jawaabista codsiyada soo socda. Haddii ay jirto hal tusaale oo keliya oo shaqaynayey, markaas haddii ay dhacdo guuldarro nidaamka oo dhan wuu burburi lahaa.

Isku-dheellitirka culeysku wuxuu sidoo kale bixiyaa miisaan toos ah. Waxaan u habeyn karnaa si aan u kordhinno tirada kiisaska ka hor inta aan la saarin culeyska ugu sarreeya, oo aan hoos u dhigno marka dhammaan isticmaalayaasha ay seexdaan.

Isku-dheellitirka culeyska, heerka API waxa la miisaami karaa ku dhawaad ​​si aan xad lahayn, iyadoo si fudud loogu dari karo xaalado cusub marka tirada codsiyada ay korodho.

Sida loo cabbiro min 1 ilaa 100 isticmaalayaasha

Ogow. Hadda nidaamkeenu wuxuu la mid yahay waxa shirkadaha PaaS sida Heroku ama Elastic Beanstalk ee AWS ay bixiyaan sanduuqa (taas oo ah sababta ay caan u yihiin). Heroku wuxuu ku dhejiyaa xogta martigeliyaha goonida ah, wuxuu maamulaa isku-dheellitirka culeyska culeyska, wuxuuna kuu oggolaanayaa inaad martigeliso macmiilka shabakadda si gooni ah API-ga. Tani waa sabab weyn oo loogu isticmaalo Heroku mashaariicda marxaladda hore ama bilawga - waxaad ka heli doontaa dhammaan adeegyada aasaasiga ah ee sanduuqa.

10 isticmaale: CDN

Laga yaaba inaynu tan samayno tan iyo bilowgiiba. Nidaaminta codsiyada iyo aqbalida sawirada cusub waxay bilaabeysaa inay cadaadis badan saarto server-yadayada.

Marxaladdan, waxaad u baahan tahay inaad adeegsato adeegga daruuraha si aad u kaydiso nuxurka taagan - sawirro, muuqaallo iyo waxyaabo kaloo badan (AWS S3 ama Meelaha Badweynta Dijital ah). Guud ahaan, API-kayagu waa in uu ka fogaadaa wax ka qabashada waxyaabaha ay ka midka yihiin u adeegida sawirada iyo soo rida sawirada serfarka.

Faa'iidada kale ee martigelinta daruuraha waa CDN (AWS waxay wacdaa add-on Cloudfront, laakiin bixiyeyaasha kaydinta daruuraha badan ayaa bixiya sanduuqa). CDN waxay si toos ah u kaydinaysaa sawiradayada xarumaha xogta ee kala duwan ee aduunka.

In kasta oo xaruntayada xogta ugu weyni ay ku taal Ohio, haddii qof ka codsado sawir Japan, bixiyaha daruuraha ayaa samayn doona nuqul oo ku kaydin doona xaruntooda xogta Jabbaan. Qofka ku xiga ee codsada sawirkan gudaha Japan wuxuu heli doonaa si dhakhso leh. Tani waa muhiim marka aan la shaqayno faylal waaweyn, sida sawiro ama muuqaalo, kuwaas oo wakhti dheer qaata in la soo dejiyo oo la gudbiyo meeraha oo dhan.

Sida loo cabbiro min 1 ilaa 100 isticmaalayaasha

100 isticmaale: cabirida lakabka xogta

CDN ayaa wax badan ka caawisay: taraafikada ayaa ku koraya xawaare buuxa. Biloog-yaqaanka caanka ah ee Mavid Mobrick ayaa nala diiwaan-galiyay oo dhajiyay "sheekadiisa", sida ay yiraahdaan. Waad ku mahadsan tahay dheellitirka culeyska, isticmaalka CPU iyo isticmaalka xusuusta ee server-yada API ayaa hoos loo dhigayaa (toban tusaale API ah ayaa socda), laakiin waxaan bilaabeynaa inaan helno waqtiyo badan oo ku saabsan codsiyada... xaggee ka imanayaan dib u dhacyadan?

In yar oo qodaya mitirka, waxaan aragnaa in CPU-ga ku jira server-ka xogta uu 80-90% raran yahay. Waxaan joognaa xadka.

Qiyaasida lakabka xogta waxay u badan tahay inay tahay qaybta ugu adag ee isla'egta. Adeegayaasha API waxay u adeegaan codsiyo bilaa dal ah, marka waxaan si fudud ugu darnaa tusaalooyin badan oo API ah. Sanka inta badan database-yada ma samayn karaan tan. Waxaan ka hadli doonaa nidaamyada maareynta xogta macluumaadka ee caanka ah (PostgreSQL, MySQL, iwm.).

kaydinta

Mid ka mid ah siyaabaha ugu fudud ee lagu kordhin karo waxqabadka xog ururinteena waa in aan soo bandhigno qayb cusub: lakabka cache. Habka kaydinta ugu caansan waa kaydka kaydinta qiimaha muhiimka ah ee xusuusta, sida Redis ama Memcached. Inta badan daruuraha waxay leeyihiin nooc la maareeyey oo adeegyadan ah: Elasticache on AWS iyo Memorystore ee Google Cloud.

Khasnado ayaa faa'iido leh marka adeeggu sameeyo wicitaano badan oo soo noqnoqda oo ku saabsan kaydka si uu u soo saaro isla macluumaadka. Asal ahaan, waxaan galeynaa xogta hal mar kaliya, ku keydin macluumaadka kaydka, oo mar kale ha taaban.

Tusaale ahaan, adeegeena Graminsta, mar kasta oo uu qof tago bogga profile ee xiddiga Mobrik, server-ka API wuxuu weydiiyaa xogta macluumaadka profile-kiisa. Tani waxay dhacdaa marar badan. Mar haddii xogta Mobrik aanay iska beddelin codsi kasta, aad bay ugu fiican tahay kaydinta

Waxaan ku kaydin doonaa natiijooyinka kaydka xogta ee Redis fure ahaan user:id oo leh muddo ansax ah oo ah 30 ilbiriqsi. Hadda, marka qof uu tago profile Mobrik, waxaan marka hore hubineynaa Redis, iyo haddii xogta ay jirto, waxaan si toos ah uga wareejineynaa Redis. Hadda codsiyada profile-ka ugu caansan ee goobta si dhab ah uma shubaan xogtayada.

Faa'iidada kale ee badiyaa adeegyada kaydinta waa inay ka sahlan yihiin in la cabbiro marka loo eego server-yada xogta. Redis waxay leedahay hab ku dhex-jira kooxda Redis La mid ah dheelli-tirka culeyska1, waxay kuu ogolaanaysaa inaad ku qaybiso kaydkaaga Redis mashiino badan (kummanaan server ah haddii loo baahdo).

Ku dhawaad ​​dhammaan codsiyada baaxadda weyn waxay isticmaalaan kaydin; waa qayb ka mid ah API-ga degdega ah. Habka weydiinta degdega ah iyo koodka wax soo saarka badan ayaa dhamaantood muhiim ah, laakiin kayd la'aanteed waa wax aan macquul ahayn in la cabbiro adeegga malaayiin isticmaalayaasha ah.

Akhri Nuqullada

Marka tirada weydiimaha keydka macluumaadka ay si aad ah u korodhay, hal shay oo kale oo aan sameyn karno ayaa ah inaan ku darno nuqullada akhrinta ee nidaamka maareynta xogta. Adeegyada la maareeyay ee kor lagu sharaxay, tan waxaa lagu samayn karaa hal gujis. Nuqulka la akhriyay waxa uu ku sii jirayaa kaydka xogta muhiimka ah waxana uu diyaar u yahay weedhaha SELECT.

Waa kan nidaamkayaga hadda:

Sida loo cabbiro min 1 ilaa 100 isticmaalayaasha

Talaabooyin dheeri ah

Maaddaama uu codsigu ku sii socdo cabbirka, waxaanu sii wadi doonaa kala soocida adeegyada si aan u cabbirno si madaxbannaan. Tusaale ahaan, haddii aan bilowno isticmaalka Websockets, markaa waxa macno ah in la jiido koodhka farsamaynta Websockets adeeg gaar ah. Waxaan ku dhejin karnaa xaalado cusub oo ka dambeeya culeyska culeyskayaga, kaas oo kor iyo hoos u kicin kara iyadoo lagu saleynayo isku xirnaanta Websockets ee furan iyo iyadoon loo eegin tirada codsiyada HTTP.

Waxaan sidoo kale sii wadi doonaa la dagaalanka xannibaadaha heerka xogta xogta. Waa marxaladdan marka la joogo waqtigii la baran lahaa qaybinta xogta iyo qaybinta. Labada habba waxay u baahan yihiin dulsaar dheeraad ah, laakiin waxay kuu oggolaanayaan inaad cabbirto kaydka xogta ku dhawaad ​​aan xad lahayn.

Waxaan sidoo kale rabnaa inaan rakibno adeegga la socodka iyo falanqaynta sida Relic Cusub ama Datadog. Tani waxay kaa caawin doontaa inaad aqoonsato su'aalaha qunyar socodka ah oo aad fahamto halka hagaajinta looga baahan yahay. Markaan cabireyno, waxaan rabnaa inaan diirada saarno sidii aan u heli lahayn caqabadaha iyo baabi'inta iyaga-inta badan annaga oo adeegsanayna qaar ka mid ah fikradaha qaybihii hore.

Ilaha

Qoraalkan waxaa dhiirigeliyay mid ka mid ah Qoraalada aan jeclahay ee ku saabsan miisaanka sare. Waxaan rabay inaan maqaalka ka dhigo wax yar oo gaar ah marxaladaha bilowga ah ee mashaariicda oo aan ka furo hal iibiye. Hubi inaad akhrido haddii aad xiisaynayso mawduucan.

Qoraalada

  1. Inkasta oo la mid ah marka loo eego qaybinta culayska ee xaalado badan, hirgelinta hoose ee kutlada Redis aad ayuu uga duwan yahay miisaan-dheeyeyaasha. [soo noqo]

Sida loo cabbiro min 1 ilaa 100 isticmaalayaasha

Source: www.habr.com

Add a comment