5 vietējie AWS pakalpojumi, kas var izveidot pilnīgu bezserveru platformu

Automatizētas programmatūras sistēmas izveide nozīmēja vairāku serveru iestatīšanu ar īpašu CPU konfigurāciju, atmiņu, krātuvi un citiem resursiem daudzus gadus. Pēc tam tika izveidota administratoru komanda, kas pārvaldīja šīs sistēmas. Tad izstrādes komanda pārņēma infrastruktūru un sāka veidot procesus, kas savieno serverus.

Šis process var būt sarežģīts, jo tajā ir iesaistītas daudzas dažādas grupas, kas strādā kopā, lai sasniegtu kopīgu mērķi. Šie interešu konflikti var radīt problēmas.

Tas var būt arī diezgan dārgi. Tas prasa, lai jūsu algu sarakstā būtu administratori. Serveri, kas darbojas nepārtraukti, patērē resursus, lai gan tie netiek izmantoti.

Lai laika gaitā uzturētu vislabāko veiktspēju, ir nepieciešams automātiskās mērogošanas risinājums, kas automātiski mērogo servera resursus.

Mākoņa platformai ir viena priekšrocība: tā ļauj izveidot visaptverošu arhitektūru bez nepieciešamības iestatīt serveru klasterus. No administrācijas viedokļa nav ko uzturēt.

Šī ir rentabla iespēja jaunuzņēmumiem un projektu minimālā dzīvotspējīgā produkta (MVP) fāzēm. Tas ir labs sākumpunkts, ja ir grūti paredzēt turpmāko ražošanas slodzi un lietotāju aktivitāti. Šeit var būt grūti noteikt klasteru serveru konfigurāciju.

Procesu automatizācija, izmantojot bezserveru mākoņpakalpojumus, izceļ arhitektūru bez serveriem. Tas savieno pakalpojumus un rada rezultātus, kas ir līdzīgi tradicionālajiem klasteru serveriem.

Šis ir piemērs šādas arhitektūras izveidei, izmantojot tikai vietējos AWS pakalpojumus.

Pakalpojumu bez servera plūsmas iegūšana

Iedomājieties, ka vēlaties izveidot platformu, lai apkopotu dažādus datus un attēlus (vai fotoattēlus) par konkrētu aktīvu infrastruktūru (tas var būt jebkurš ražošanas vai komunālais īpašums).

  • Lai turpmāk būtu iespējams veikt analīzi, vispirms ir jāapgūst ienākošie dati.
  • Pēc biznesa noteikumu piemērošanas aizmugures procedūra saglabā aprēķinātos rezultātus kā normalizētu informāciju relāciju datu bāzē.
  • Lietojumprogrammas priekšgals, kas parāda normalizētus tīrus datus, ļauj lietotājiem skatīt rezultātus.

Apskatīsim, kuras sastāvdaļas arhitektūrā varētu iekļaut.

AWS S3 spaiņi

Avots: aws.amazon.com

Amazon S3 spaiņi ir lielisks veids, kā saglabāt failus vai attēlus AWS mākonī. S3 kausa krātuves cena ir ārkārtīgi zema. Turklāt S3 kausa dzīves cikla politikas ieviešana vēl vairāk samazina šo cenu.

  Kā tas palīdz IT efektivitātei?

Šāda politika automātiski pārvietos vecākus failus uz dažādām S3 segmentu klasēm, piemēram, arhīva vai dziļa arhīva piekļuvi. Klases atšķiras arī pēc piekļuves laika ātruma, taču veciem datiem tas būs mazāk problēmu. Tas galvenokārt kalpo, lai piekļūtu arhivētajiem datiem steidzama notikuma gadījumā, nevis standarta operāciju vajadzībām.

  • Jūs varat kārtot savus datus apakšmapēs.
  • Jums ir jāiestata atbilstoši atļauju ierobežojumi.
  • Pievienojiet segmentiem tagus, lai tos būtu viegli identificēt un tos varētu izmantot dinamiskās S3 segmentu politikās.
  • Pēc dizaina spainis ir bez servera. Tā vienkārši ir jūsu datu glabāšanas vieta.

S3 spainis pēc konstrukcijas ir bez servera. Tā vienkārši ir jūsu datu glabāšanas vieta.

AWS Athena datu bāze

Avots: aws.amazon.com

Athena ļauj viegli izveidot AWS pamatdatu ezeru. Tā ir datu bāze bez serveriem, kas savu datu glabāšanai izmanto S3 spaini. Datu organizēšanu nodrošina strukturēti failu formāti, piemēram, parketa vai komatatdalīto vērtību (CSV) faili. S3 spainī ir faili, un Athena atsaucas uz tiem ikreiz, kad procesi atlasa datus no datu bāzes.

Vienkārši ņemiet vērā, ka Athena neatbalsta dažādas funkcijas, kas citādi tiek uzskatītas par standartu, piemēram, atjaunināšanas paziņojumus. Tāpēc uz Atēnu ir jāskatās kā uz ļoti vienkāršu iespēju.

Tomēr tas atbalsta indeksēšanu un sadalīšanu. To var arī ļoti viegli mērogot horizontāli, jo tas ir tikpat sarežģīti kā infrastruktūrai pievienot jaunus spaiņus. Vairumā gadījumu ar to joprojām var pietikt vienkāršai, taču funkcionālai datu ezera izveidei.

Lai nodrošinātu labu veiktspēju, ir svarīgi izvēlēties labāko datu dizainu, koncentrējoties uz turpmāku izmantošanu. Ir svarīgi skaidri noteikt veidu, kādā vēlaties atlasīt datus. Ir grūti atkārtoti izveidot tabulas vēlāk, kad tās jau ir izveidotas un aizpildītas ar daudziem datiem.

Athena DB ir lieliska izvēle un labi piemērota jūsu mērķim, ja vēlaties izveidot vienkāršu un nemainīgu datu kopu, kuru laika gaitā ir viegli mērogot horizontāli.

AWS Aurora datu bāze

Avots: aws.amazon.com

Athena DB izceļas ar nekurētu datu glabāšanu. Tādā veidā vēlaties saglabāt savu sākotnējo saturu, lai pēc iespējas palielinātu tā atkārtotu izmantošanu nākotnē. Tomēr atlasītu rezultātu nodrošināšana priekšgala lietotnei ir lēna.

Viena no labākajām iespējām, galvenokārt no viegli izpildāmas iestatīšanas viedokļa, ir Aurora datu bāze, kas darbojas bez servera režīmā.

  Kas ir WPA3 WiFi drošības standarts?

Aurora ir tālu no pamata datu bāzes. Tas ir viens no vismodernākajiem AWS relāciju datu bāzes risinājumiem. Tas ir arī ļoti sarežģīts vietējās relāciju datu bāzes risinājums, kas tiek uzlabots ar katru izlaidumu.

Aurora ir unikāla, jo tā var darboties bez servera režīmā, tādējādi izceļot to no citiem relāciju pakalpojumiem. Šis režīms darbojas šādi:

  • Lai konfigurētu Aurora klasteru, izmantojiet AWS konsoli. Jums būs jānorāda standarta CPU un RAM līmenis, kā arī maksimālais automātiskās mērogošanas funkcionalitātes intervāls. Tas ietekmēs veiktspēju, ko Aurora klasteris var dinamiski pievienot vai noņemt. Pamatojoties uz pašreizējo datu bāzes izmantošanu, AWS nolemj palielināt vai samazināt mērogu.
  • Aurora klasteris nesāksies, ja lietotājs vai process nesāks reālu pieprasījumu. Piemēram, kad sākas plānotā pakešu apstrāde. Vai arī lietojumprogramma veic aizmugures API izsaukumu, lai izgūtu datus no datu bāzes. Datubāze tiks automātiski atvērta un paliks aktīva iepriekš noteiktu laiku pēc pieprasījuma procesu pabeigšanas.
  • Ja datu bāzē vairs nebūs darba, Aurora klasteris tiks automātiski izslēgts.

Lai to vēlreiz uzsvērtu, Aurora DB bez servera darbojas tikai tad, kad tai ir jādara reāls darbs. Automātiski palaitais klasteris atkal tiks izslēgts, ja tas neapstrādās nevienu darbu. Faktiskais darbs ir tas, par ko jūs maksājat, nevis dīkstāves laiks.

Aurora bez servera pilnībā pārvalda AWS, un tai nav nepieciešams administrators.

AWS pastiprināt

Amplify piedāvā bezservera platformu ātrai priekšgala lietojumprogrammu izvietošanai, kas izveidotas ar JavaScript un React bibliotēkām. Nav nepieciešams iestatīt klasteru serverus. Izmantojiet AWS konsoli, lai tieši izvietotu kodu, vai izmantojiet automatizētu DevOps konsoli.

Varat izsaukt aizmugures API, lai sasniegtu datu bāzēs saglabātos datus. Šie zvani ļauj piekļūt faktiskajiem datiem priekšgala lietojumprogrammā. Galvenā veiktspējas optimizācija aizmugurējā daļā ir jāveic komandai. Jūs pat varat vēl vairāk samazināt lēnas reakcijas iespēju lietotāja saskarnē, ja veidojat efektīvus atlases paziņojumus tieši API izsaukumos.

AWS soļu funkcijas

Avots: aws.amazon.com

Lai gan visas galvenās sistēmas sastāvdaļas ir bez servera, tas negarantē pilnīgu arhitektūru bez serveriem. Tas ir iespējams tikai tad, ja visi pakešu procesi starp komponentiem ir bez servera.

AWS Step funkcijas nodrošina labāko risinājumu AWS mākonī. Savienots AWS Lambda funkciju saraksts veido soļu funkciju. Šīs funkcijas izveido plūsmas diagrammu ar skaidriem sākuma un beigu stāvokļiem. Lambda funkcija, kas parasti rakstīta Python vai Node JS valodās, ir izpildāms koda bits, kas apstrādā visu nepieciešamo.

  Kā izdzēst ierīci no pakalpojuma Find My

Tālāk ir sniegts piemērs, kā izpildīt soļu funkciju:

  • AWS iedarbina automātisku lambda funkciju ikreiz, kad S3 mapē nonāk jauns fails. Pēc faila parsēšanas lambda to ielādē Athena. Pirms aizvēršanas lambda saglabā rezultātus CSV formātā S3 segmentā (vai datu bāzes izsekošanas tabulā).
  • Pēc tam šo rezultātu izmanto nākamā lambda, lai veiktu nākamās darbības. Tas varētu ietvert mašīnmācīšanās modeļa izsaukšanu un apakškopas pārveidošanu no jaunajiem datiem normalizētās tabulās. Pēdējais solis var būt datu ielāde Aurora datu bāzē.
  • Pakāpju funkcija saista šīs lambdas kopā, veidojot partijas plūsmu. Ir pat iespējams, ka citas saknes soļa funkcijas soļa vietā tiek izpildīta cita soļa funkcija. Tādā veidā ir iespējams aptvert daudzus scenārijus.
  • Šai bezserveru plūsmai ir viens būtisks trūkums: katra lambda funkcija var darboties ne vairāk kā 15 minūtes. Tāpēc plūsmas sadalīšana mazākās lambda funkcijās var padarīt to mazāk problemātisku.

    Vienā solī ir iespējams vienlaikus izsaukt vairākas lambda funkcijas, kas būtībā nozīmē soļa paralēlizēšanu ar vairākām vienlaicīgi izpildītām lambda funkcijām. Vienkārši pagaidiet, līdz tiek pabeigta visa paralēlā lambda apstrāde, pirms turpināt. Pēc tam pārejiet pie nākamās lambda apstrādes.

    Nobeiguma vārdi

    Bezserveru arhitektūra piedāvā unikālu iespēju izveidot mākoņa platformu, kas aptver visu sistēmas ainavu. Šī platforma ir horizontāli mērogojama, un tai ir zemas darbības izmaksas.

    Tas ir ideāls risinājums projektiem ar ierobežotu budžetu. Tā ir lieliska izpētes iespēja, parasti gadījumos, kad neviens nezina ražošanas slodzes realitāti. Tas ir īpaši svarīgi pēc tam, kad esat veiksmīgi pievienojis visus lietotājus. Projekta komandas joprojām var iegūt vispārēju priekšstatu par sistēmas darbību. Jums var būt visas šīs priekšrocības, taču jums joprojām nav jāpieņem kompromisi.

    Šis pārklājums nebūs piemērots visiem gadījumiem, jo ​​īpaši tiem, kas saistīti ar lielu CPU izmantošanu. Tomēr AWS mākonis nepārtraukti attīstās bezservera lietošanas gadījumu ziņā. Parasti ir ieteicams veikt rūpīgu izpēti, pirms izlemjat par bezservera iespēju savam nākamajam AWS mākoņa projektam.

    Pēc tam pārbaudiet labākās datu bāzes bez serveriem mūsdienu lietojumprogrammām.