{"id":39302,"date":"2019-10-31T22:29:40","date_gmt":"2019-10-31T19:29:40","guid":{"rendered":"https:\/\/prohoster.info\/blog\/kak-aws-varit-svoi-elastichnye-servisy-masshtabirovanie-serverov-i-bazy-dannyh\/"},"modified":"2019-10-31T22:29:40","modified_gmt":"2019-10-31T19:29:40","slug":"kak-aws-varit-svoi-elastichnye-servisy-masshtabirovanie-serverov-i-bazy-dannyh","status":"publish","type":"post","link":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/kak-aws-varit-svoi-elastichnye-servisy-masshtabirovanie-serverov-i-bazy-dannyh","title":{"rendered":"Cum \u201eg\u0103te\u0219te\u201d AWS serviciile sale elastice. Scalarea serverelor \u0219i bazelor de date","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Norii sunt asemenea unei cutii magice - \u00eendici ce ai nevoie, iar resursele apar din neant. Ma\u0219ini virtuale, baze de date, re\u021bea - toate acestea \u00ee\u021bi apar\u021bin \u00een totalitate. Exist\u0103 \u0219i al\u021bi utilizatori \u00een cloud, dar \u00een universul t\u0103u e\u0219ti singurul conduc\u0103tor. E\u0219ti sigur c\u0103 vei ob\u021bine \u00eentotdeauna resursele necesare, f\u0103r\u0103 s\u0103 te consulti cu al\u021bii \u0219i stabile\u0219ti singur cum va ar\u0103ta re\u021beaua. Cum func\u021bioneaz\u0103 aceast\u0103 magie care permite cloud-ului s\u0103 aloce resurse \u00een mod elastic \u0219i s\u0103 izoleze complet utilizatorii unii de al\u021bii?<\/p>\n<p><img decoding=\"async\" alt=\"Cum \u201eg\u0103te\u0219te\u201d AWS serviciile sale elastice. Scalarea serverelor \u0219i bazelor de date\" src=\"\/wp-content\/uploads\/2019\/10\/075904e4db290f28746dd0054c9f87bf.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nCloud-ul AWS este un sistem mega-complex, care s-a dezvoltat evolutiv din 2006. O parte din aceast\u0103 evolu\u021bie a fost martor <strong>Vasili Pantyuhin<\/strong> \u2014 arhitectul Amazon Web Services. Ca arhitect, el vede nu doar rezultatul final, ci \u0219i provoc\u0103rile pe care le dep\u0103\u0219e\u0219te AWS. Cu c\u00e2t \u00een\u021belegi mai bine cum func\u021bioneaz\u0103 sistemul, cu at\u00e2t devine mai mare \u00eencrederea. De aceea, Vasilii va \u00eemp\u0103rt\u0103\u0219i secretele serviciilor cloud AWS. \u00cen acest articol, vei descoperi structura serverelor fizice AWS, scalabilitatea elastic\u0103 a bazelor de date, baza de date personalizat\u0103 Amazon \u0219i metodele de cre\u0219tere a performan\u021bei ma\u0219inilor virtuale, \u00een timp ce le reduci costurile. Cunoa\u0219terea abord\u0103rilor arhitecturale Amazon te va ajuta s\u0103 folose\u0219ti mai eficient serviciile AWS \u0219i, poate, \u00ee\u021bi va oferi idei noi pentru dezvoltarea propriilor solu\u021bii.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\n<i>Despre speaker: Vasilii Pantyuhin (<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/users\/hen\/\" class=\"user_link\">Hen<\/a><\/noindex>) a \u00eenceput ca administrator Unix \u00een companiile .ru, a petrecut 6 ani lucr\u00e2nd cu echipamente mari Sun Microsystems, \u0219i 11 ani promov\u00e2nd centrismul datelor \u00een EMC. A evoluat natural spre cloud-uri private, iar \u00een 2017 a trecut la cele publice. Acum ofer\u0103 sfaturi tehnice pentru a ajuta s\u0103 tr\u0103iasc\u0103 \u0219i s\u0103 se dezvolte \u00een cloud-ul AWS.<\/p>\n<p>Declinarea: tot ce urmeaz\u0103 este p\u0103rerea personal\u0103 a lui Vasilii \u0219i poate s\u0103 nu corespund\u0103 pozi\u021biei Amazon Web Services. <noindex><a rel=\"nofollow\" href=\"https:\/\/youtu.be\/S3f6nWJxBvk\">\u00cenregistrarea video<\/a><\/noindex> a prezent\u0103rii, pe baza c\u0103reia a fost creat articolul, este disponibil\u0103 pe canalul nostru de YouTube.<\/i><\/p>\n<h2>De ce vorbesc despre structura Amazon<\/h2>\n<p>\nMa\u0219ina mea prima avea o \u201em\u00e2ner\u201d - cu cutie de viteze mecanic\u0103. A fost minunat datorit\u0103 senza\u021biei de a putea controla ma\u0219ina \u0219i de a o gestiona complet. \u00cemi pl\u0103cea, de asemenea, c\u0103 m\u0103 \u00een\u021belegeam, m\u0103car vag, cu principiul ei de func\u021bionare. \u00cen mod natural, imagina\u021bia mea despre structura cutiei era destul de simplist\u0103 - cam ca o cutie de viteze pe biciclet\u0103.<\/p>\n<p><img decoding=\"async\" alt=\"Cum \u201eg\u0103te\u0219te\u201d AWS serviciile sale elastice. Scalarea serverelor \u0219i bazelor de date\" src=\"\/wp-content\/uploads\/2019\/10\/edaec571a676e162d5f075042ac9d8ea.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nTotul a fost minunat, cu o singur\u0103 excep\u021bie \u2014 statul \u00een trafic. Te sim\u021bi ca \u0219i cum nu faci nimic, dar constant schimbi vitezele, ape\u0219i pe ambreiaj, accelerezi, fr\u00e2nezi \u2014 din cauza asta, \u00eentr-adev\u0103r, obose\u0219ti. Problema traficelor s-a rezolvat par\u021bial c\u00e2nd familia a cump\u0103rat o ma\u0219in\u0103 cu transmisie automat\u0103. La volan, a ap\u0103rut timpul s\u0103 m\u0103 g\u00e2ndesc la ceva, s\u0103 ascult o carte audio.<\/p>\n<p>De asemenea, \u00een via\u021ba mea a ap\u0103rut o enigm\u0103, deoarece am \u00eencetat complet s\u0103 \u00een\u021beleg cum func\u021bioneaz\u0103 ma\u0219ina mea. O ma\u0219in\u0103 modern\u0103 este un dispozitiv complex. Aceasta se adapteaz\u0103 simultan la zeci de parametri diferi\u021bi: ap\u0103sarea pedalei de accelera\u021bie, fr\u00e2na, stilul de condus, calitatea drumului. Nu mai \u00een\u021beleg cum func\u021bioneaz\u0103.<\/p>\n<p>C\u00e2nd am \u00eenceput s\u0103 m\u0103 ocup de cloud-ul Amazon, pentru mine a fost, de asemenea, un mister. Doar c\u0103 acest mister este cu un ordin mai ridicat, pentru c\u0103 \u00een ma\u0219in\u0103 este un singur \u0219ofer, iar \u00een AWS sunt milioane. To\u021bi utilizatorii conduc simultan, accelereaz\u0103 \u0219i fr\u00e2neaz\u0103. Este uimitor cum ajung acolo unde \u00ee\u0219i doresc \u2014 pentru mine, aceasta este o minune! Sistemul se adapteaz\u0103 automat, se scaleaz\u0103 \u0219i se ajusteaz\u0103 elastic pentru fiecare utilizator, astfel c\u0103 acesta simte c\u0103 este singur \u00een acest Univers.<\/p>\n<p>Magia s-a risipit pu\u021bin c\u00e2nd, mai t\u00e2rziu, am venit s\u0103 lucrez ca arhitect la Amazon. Am v\u0103zut cu ce probleme ne confrunt\u0103m, cum le rezolv\u0103m, cum dezvolt\u0103m serviciile. Pe m\u0103sur\u0103 ce \u00een\u021belegerea sistemului cre\u0219te, apare mai mult\u0103 \u00eencredere \u00een serviciu. De aceea vreau s\u0103 \u00eemp\u0103rt\u0103\u0219esc imaginea a ceea ce se afl\u0103 sub capota cloud-ului AWS.<\/p>\n<h2>Despre ce vom discuta<\/h2>\n<p>\nAm ales o abordare diversificat\u0103 \u2014 am selectat 4 servicii interesante despre care merit\u0103 s\u0103 vorbim.<\/p>\n<p><strong>Optimizarea serverelor<\/strong>. Clouds efemere cu o \u00eentrupare fizic\u0103: centre de date fizice, unde se afl\u0103 servere fizice, care vibreaz\u0103, se \u00eenc\u0103lzesc \u0219i lumineaz\u0103 becurile.<\/p>\n<p><strong>Func\u021bii serverless <\/strong>(Lambda) \u2014 probabil, cel mai scalabil serviciu din cloud.<\/p>\n<p><strong>Scalarea bazelor de date<\/strong>. Voi povesti despre cum construim bazele noastre de date scalabile.<\/p>\n<p><strong>Scalarea re\u021belei<\/strong>. Ultima parte, \u00een care voi deschide structura re\u021belei noastre. Este o minune \u2014 fiecare utilizator al cloud-ului crede c\u0103 este singur \u00een cloud \u0219i nu vede deloc ceilal\u021bi chiria\u0219i.<\/p>\n<blockquote><p><i>Not\u0103. \u00cen acest articol se va discuta despre optimizarea serverelor \u0219i scalarea bazei de date. Scalarea re\u021belei va fi discutat\u0103 \u00een articolul urm\u0103tor. Unde sunt func\u021biile serverless? Despre acestea a fost publicat\u0103 o explicare separat\u0103 \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/oleg-bunin\/blog\/464305\/\">Mic, dar puternic. Unboxing-ul microvirtualiz\u0103rii Firecracker<\/a><\/noindex>\u00bb. \u00cen aceasta se discut\u0103 despre mai multe metode diferite de scalare, \u0219i solu\u021bia Firecracker este explicat\u0103 \u00een detaliu \u2014 un simbioz\u0103 a celor mai bune calit\u0103\u021bi ale ma\u0219inilor virtuale \u0219i containerelor.<\/i><\/p><\/blockquote>\n<p><\/p>\n<h2>Servere<\/h2>\n<p>\nCloud-ul este efemer. Dar aceast\u0103 efemeritate are totu\u0219i o \u00eentruchipare fizic\u0103 \u2014 serverele. Ini\u021bial, arhitectura lor a fost clasic\u0103. Un chipset standard x86, pl\u0103ci de re\u021bea, Linux, hipervizor Xen, pe care au fost rulate ma\u0219inile virtuale.<\/p>\n<p><img decoding=\"async\" alt=\"Cum \u201eg\u0103te\u0219te\u201d AWS serviciile sale elastice. Scalarea serverelor \u0219i bazelor de date\" src=\"\/wp-content\/uploads\/2019\/10\/734f99888072f78527bcc5f59485a1ff.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n\u00cen 2012, o astfel de arhitectur\u0103 f\u0103cea fa\u021b\u0103 cerin\u021belor sale. Xen este un hipervizor excelent, dar are un dezavantaj serios. Acesta are <strong>costuri de suprasarcin\u0103 destul de mari pentru emularea dispozitivelor<\/strong>. Odat\u0103 cu apari\u021bia unor pl\u0103ci de re\u021bea mai rapide sau a discurilor SSD, aceste costuri de suprasarcin\u0103 devin prea mari. Cum putem face fa\u021b\u0103 acestei probleme? Am decis s\u0103 lucr\u0103m pe dou\u0103 fronturi \u2014 <strong>s\u0103 optimiz\u0103m at\u00e2t hardware-ul, c\u00e2t \u0219i hipervizorul<\/strong>. Sarcina este foarte serioas\u0103.<\/p>\n<h3>Optimizarea hardware-ului \u0219i a hipervizorului<\/h3>\n<p>\nNu vom reu\u0219i s\u0103 facem totul dintr-o dat\u0103 \u0219i bine. Ce \u00eenseamn\u0103 \u00abbine\u00bb, ini\u021bial nu era clar.<\/p>\n<blockquote><p>Am decis s\u0103 aplic\u0103m o abordare evolutiv\u0103 \u2014 schimb\u0103m un element important al arhitecturii \u0219i \u00eel lans\u0103m \u00een produc\u021bie.<\/p><\/blockquote>\n<p>Incepem s\u0103 c\u0103lc\u0103m pe toate greblele, ascult\u0103m pl\u00e2ngerile \u0219i sugestiile. Apoi schimb\u0103m alt component. A\u0219a, prin mici incermente, schimb\u0103m radical \u00eentreaga arhitectur\u0103 baz\u00e2ndu-ne pe feedback-ul utilizatorilor \u0219i al echipei de suport.<\/p>\n<p>Transform\u0103rile au \u00eenceput \u00een 2013 cu cea mai complicat\u0103 \u2014 re\u021beaua. \u00cen <strong>C3<\/strong> instan\u021bele standard au fost ad\u0103ugate o plac\u0103 special\u0103 Network Accelerator. Aceasta era conectat\u0103 printr-un scurt cablu loopback pe panoul frontal. Inestetic, dar \u00een cloud nu se vede. Totu\u0219i, interac\u021biunea direct\u0103 cu hardware-ul a \u00eembun\u0103t\u0103\u021bit semnificativ jitter-ul \u0219i capacitatea de transmisie a re\u021belei.<\/p>\n<p>Apoi, am decis s\u0103 ne ocup\u0103m de \u00eembun\u0103t\u0103\u021birea accesului la stocarea blocului de date EBS \u2014 Elastic Block Storage. Aceasta este o combina\u021bie \u00eentre re\u021bea \u0219i stocare. Complexitatea const\u0103 \u00een faptul c\u0103, de\u0219i pe pia\u021b\u0103 existau pl\u0103ci Network Accelerator, nu existau op\u021biuni de a cump\u0103ra hardware pentru Storage Accelerator. A\u0219a c\u0103 ne-am adresat startup-ului <strong>Annapurna Labs<\/strong>, care a dezvoltat pentru noi cipuri speciale ASIC. Acestea au permis conectarea volumelor EBS de la distan\u021b\u0103 ca unit\u0103\u021bi NVMe.<\/p>\n<p>\u00cen instan\u021be <strong>C4<\/strong> am rezolvat dou\u0103 probleme. Prima - am realizat o preg\u0103tire pentru tehnologia NVMe, care era promi\u021b\u0103toare, dar nou\u0103 la acel moment. A doua - am desc\u0103rcat semnificativ procesorul central prin mutarea proces\u0103rii cererilor c\u0103tre EBS pe o nou\u0103 plac\u0103. A ie\u0219it foarte bine, a\u0219a c\u0103 acum Annapurna Labs face parte din Amazon.<\/p>\n<p>P\u00e2n\u0103 \u00een noiembrie 2017, ne-am dat seama c\u0103 a sosit timpul s\u0103 schimb\u0103m \u0219i hipervizorul \u00een sine.<\/p>\n<blockquote><p>Noul hipervizor a fost dezvoltat pe baza modulelor Kernel KVM \u00eembun\u0103t\u0103\u021bite.<\/p><\/blockquote>\n<p>Acesta a permis reducerea semnificativ\u0103 a cheltuielilor pentru emularea dispozitivelor \u0219i a lucrat direct cu noile cipuri ASIC. Instan\u021bele <strong>C5<\/strong> au fost primele ma\u0219ini virtuale care au folosit noul hipervizor. L-am numit <strong>Nitro<\/strong>.<\/p>\n<p><img decoding=\"async\" alt=\"Cum \u201eg\u0103te\u0219te\u201d AWS serviciile sale elastice. Scalarea serverelor \u0219i bazelor de date\" src=\"\/wp-content\/uploads\/2019\/10\/f9ccbf867e405e88e36d7618375a9e73.jpg\" style=\"display:block;margin: 0 auto;\" \/><em>Evolu\u021bia instan\u021belor pe o linie temporal\u0103.<\/em><\/p>\n<p>Toate noile tipuri de ma\u0219ini virtuale care au ap\u0103rut din noiembrie 2017 func\u021bioneaz\u0103 pe acest hipervizor.<strong> Instan\u021bele Bare Metal nu au hipervizor,<\/strong>, dar sunt, de asemenea, numite Nitro, deoarece folosesc pl\u0103ci specializate Nitro.<\/p>\n<p>\u00cen urm\u0103torii doi ani, num\u0103rul tipurilor de instan\u021be Nitro a dep\u0103\u0219it c\u00e2teva zeci: A1, C5, M5, T3 \u0219i altele.<\/p>\n<p><img decoding=\"async\" alt=\"Cum \u201eg\u0103te\u0219te\u201d AWS serviciile sale elastice. Scalarea serverelor \u0219i bazelor de date\" src=\"\/wp-content\/uploads\/2019\/10\/3342d335f54f28b3225c7c6d95f27744.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>Tipuri de instan\u021be.<\/em><\/p>\n<h3>Cum sunt construite ma\u0219inile Nitro moderne<\/h3>\n<p>\nAcestea au trei componente principale: hipervizor Nitro (despre care s-a vorbit mai sus), cip de securitate \u0219i pl\u0103ci Nitro.<\/p>\n<p><strong>Cipul de securitate<\/strong> este integrat direct \u00een placa de baz\u0103. Acesta controleaz\u0103 numeroase func\u021bii importante, de exemplu, controlul \u00eenc\u0103rc\u0103rii sistemului de operare gazd\u0103.<\/p>\n<p><strong>Pl\u0103cile Nitro<\/strong> exist\u0103 \u00een patru tipuri. Toate au fost dezvoltate de Annapurna Labs \u0219i se bazeaz\u0103 pe ASIC-uri comune. O parte din firmware-ul lor, de asemenea, este comun.<\/p>\n<p><img decoding=\"async\" alt=\"Cum \u201eg\u0103te\u0219te\u201d AWS serviciile sale elastice. Scalarea serverelor \u0219i bazelor de date\" src=\"\/wp-content\/uploads\/2019\/10\/411947f770f82dead25f9fafad5814c6.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>Cele patru tipuri de pl\u0103ci Nitro.<\/em><\/p>\n<p>Una dintre pl\u0103ci este destinat\u0103 lucrului cu <strong>re\u021beaua<\/strong><strong>VPC<\/strong>. Aceasta este vizibil\u0103 \u00een ma\u0219inile virtuale ca plac\u0103 de re\u021bea <strong>ENA \u2014 Elastic Network Adaptor<\/strong>. De asemenea, aceasta encapsuleaz\u0103 traficul atunci c\u00e2nd este transmis prin re\u021beaua fizic\u0103 (despre care vom vorbi \u00een a doua parte a articolului), controleaz\u0103 firewall-ul Security Groups, se ocup\u0103 de rutare \u0219i alte aspecte re\u021bea.<\/p>\n<p>Pl\u0103cile separate lucreaz\u0103 cu stocarea blocurilor <strong>EBS<\/strong> \u0219i cu discurile integrate \u00een server. Acestea sunt prezentate pentru ma\u0219ina virtual\u0103 ca <strong>adaptori NVMe<\/strong>. De asemenea, se ocup\u0103 de criptarea datelor \u0219i monitorizarea discurilor.<\/p>\n<p>Sistemul de pl\u0103ci Nitro, hipervizorul \u0219i cipul de securitate sunt unite \u00eentr-o re\u021bea SDN sau<strong> Software Defined Network<\/strong>. Controlul acestei re\u021bele (Control Plane) este responsabil <strong>controler de hart\u0103<\/strong>.<\/p>\n<p>Desigur, continu\u0103m dezvoltarea de noi ASIC. De exemplu, la sf\u00e2r\u0219itul anului 2018 am lansat cipul Inferentia, care permite o gestionare mai eficient\u0103 a sarcinilor de \u00eenv\u0103\u021bare automat\u0103.<\/p>\n<p><img decoding=\"async\" alt=\"Cum \u201eg\u0103te\u0219te\u201d AWS serviciile sale elastice. Scalarea serverelor \u0219i bazelor de date\" src=\"\/wp-content\/uploads\/2019\/10\/2e20101688bc0b68bb54ea7cd1344f51.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>Cipul Inferentia Processor pentru \u00cenv\u0103\u021bare Automat\u0103.<\/em><\/p>\n<h2>Baz\u0103 de date scalabil\u0103<\/h2>\n<p>\nO baz\u0103 de date tradi\u021bional\u0103 are o structur\u0103 stratificat\u0103. Dac\u0103 simplific\u0103m foarte mult, se pot identifica urm\u0103toarele niveluri.<\/p>\n<ul>\n<li><strong>SQL<\/strong> \u2014 pe care lucreaz\u0103 gestionarii de clien\u021bi \u0219i cereri.<\/li>\n<li>Asigur\u0103ri <strong>tranzac\u021bii<\/strong> \u2014 aici totul este clar, ACID \u0219i toate celelalte.<\/li>\n<li><strong>Cache<\/strong>, care este asigurat\u0103 de pool-urile de buffer.<\/li>\n<li><strong>Logare<\/strong> \u2014 se ocup\u0103 de gestionarea redo-logs-urilor. \u00cen MySQL, acestea se numesc Bin Logs, iar \u00een PostgreSQL \u2014 Write Ahead Logs (WAL).<\/li>\n<li><strong>Stocare <\/strong>\u2013 direct \u00eenregistrare pe disc.<\/li>\n<\/ul>\n<p>\n<img decoding=\"async\" alt=\"Cum \u201eg\u0103te\u0219te\u201d AWS serviciile sale elastice. Scalarea serverelor \u0219i bazelor de date\" src=\"\/wp-content\/uploads\/2019\/10\/b6ddee7bd150d307049a95f943b15e4c.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>Structura stratificat\u0103 a bazei de date.<\/em><\/p>\n<p>Exist\u0103 diferite metode de scalare a bazelor de date: sharding, arhitectura Shared Nothing, discuri partajate.<\/p>\n<p><img decoding=\"async\" alt=\"Cum \u201eg\u0103te\u0219te\u201d AWS serviciile sale elastice. Scalarea serverelor \u0219i bazelor de date\" src=\"\/wp-content\/uploads\/2019\/10\/ec8c74c80f295018271326d20d36b08e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nCu toate acestea, toate aceste metode p\u0103streaz\u0103 aceea\u0219i structur\u0103 monolitic\u0103 a bazei de date. Aceasta limiteaz\u0103 semnificativ scalabilitatea. Pentru a rezolva aceast\u0103 problem\u0103, am dezvoltat propria noastr\u0103 baz\u0103 de date \u2014 <strong>Amazon Aurora<\/strong>. Este compatibil\u0103 cu MySQL \u0219i PostgreSQL.<\/p>\n<h3>Amazon Aurora<\/h3>\n<p>\nIdeea arhitectural\u0103 principal\u0103 este de a separa nivelurile de stocare \u0219i logare de baza de date principal\u0103.<\/p>\n<p>Spun\u00e2nd mai devreme, nivelul de caching l-am realizat, de asemenea, ca fiind independent. Arhitectura \u00eenceteaz\u0103 s\u0103 mai fie monolitic\u0103 \u0219i ob\u021binem libert\u0103\u021bi suplimentare \u00een scalarea blocurilor individuale.<\/p>\n<p><img decoding=\"async\" alt=\"Cum \u201eg\u0103te\u0219te\u201d AWS serviciile sale elastice. Scalarea serverelor \u0219i bazelor de date\" src=\"\/wp-content\/uploads\/2019\/10\/dfe3f039fbcf5140aa1541802b51c1ec.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>Nivelurile de logare \u0219i stocare sunt separate de baza de date.<\/em><\/p>\n<p>O SGBD tradi\u021bional\u0103 \u00eenregistreaz\u0103 datele pe sistemul de stocare sub form\u0103 de blocuri. \u00cen Amazon Aurora, am creat un stocaj \u201einteligent\u201d, care poate comunica \u00een limbajul <strong>redo-logs-urilor<\/strong>. \u00cen interiorul s\u0103u, stocajul transform\u0103 logurile \u00een blocuri de date, monitorizeaz\u0103 integritatea acestora \u0219i efectueaz\u0103 automat backup-uri.<\/p>\n<p>Aceast\u0103 abordare permite implementarea unor lucruri interesante precum <strong>clonarea<\/strong>. Aceasta func\u021bioneaz\u0103 fundamental mai repede \u0219i mai eficient, deoarece nu necesit\u0103 crearea unei copii complete a tuturor datelor.<\/p>\n<p>Nivelul de stocare este realizat sub forma unui sistem distribuit. Acesta const\u0103 dintr-un num\u0103r foarte mare de servere fizice. Fiecare redo-log este procesat \u0219i salvat simultan <strong>de \u0219ase noduri<\/strong>. Aceasta asigur\u0103 protec\u021bia datelor \u0219i distribu\u021bia sarcinii.<\/p>\n<p><img decoding=\"async\" alt=\"Cum \u201eg\u0103te\u0219te\u201d AWS serviciile sale elastice. Scalarea serverelor \u0219i bazelor de date\" src=\"\/wp-content\/uploads\/2019\/10\/9861d6e975b483cc5a20727af91b1a6b.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nScalarea pentru citire poate fi realizat\u0103 prin replici corespunz\u0103toare. Stocarea distribuit\u0103 elimin\u0103 necesitatea sincroniz\u0103rii \u00eentre instan\u021ba principal\u0103 a bazei de date, prin care scriem datele, \u0219i celelalte replici. Datele actualizate sunt garantat disponibile pentru toate replicile.<\/p>\n<p>Singura problem\u0103 este caching-ul datelor vechi pe replicile de citire. Dar aceast\u0103 sarcin\u0103 poate fi rezolvat\u0103 <strong>prin transmiterea tuturor jurnalelor redo<\/strong> pe replici prin re\u021beaua intern\u0103. Dac\u0103 jurnalul este \u00een cache, este marcat ca invalid \u0219i se rescrie. Dac\u0103 nu este \u00een cache, este pur \u0219i simplu abandonat.<\/p>\n<p><img decoding=\"async\" alt=\"Cum \u201eg\u0103te\u0219te\u201d AWS serviciile sale elastice. Scalarea serverelor \u0219i bazelor de date\" src=\"\/wp-content\/uploads\/2019\/10\/f87a140e401c49282d58ef65df5a4da2.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAm rezolvat problema stoc\u0103rii.<\/p>\n<h3>Cum s\u0103 scal\u0103m nivelurile DBMS<\/h3>\n<p>\nAici scalarea orizontal\u0103 este mult mai complicat\u0103. A\u0219adar, vom urma calea <strong>scal\u0103rii verticale clasice<\/strong>.<\/p>\n<p>S\u0103 presupunem c\u0103 avem o aplica\u021bie care comunic\u0103 cu DBMS-ul printr-un nod master. <\/p>\n<p>La scalarea vertical\u0103, aloc\u0103m un nou nod care va avea mai mul\u021bi procesoare \u0219i memorie.<\/p>\n<p><img decoding=\"async\" alt=\"Cum \u201eg\u0103te\u0219te\u201d AWS serviciile sale elastice. Scalarea serverelor \u0219i bazelor de date\" src=\"\/wp-content\/uploads\/2019\/10\/72f09bdc94584629fad0c40bf1a45bd9.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nApoi, comut\u0103m aplica\u021bia de la vechiul nod master la nou. Apare o problem\u0103.<\/p>\n<ul>\n<li>Aceasta va necesita o \u00eentrerupere semnificativ\u0103 a aplica\u021biei.<\/li>\n<li>Noul nod master va avea un cache rece. Performan\u021ba DB-ului va fi maxim\u0103 doar dup\u0103 \u00eenc\u0103lzirea cache-ului.<\/li>\n<\/ul>\n<p>\n<img decoding=\"async\" alt=\"Cum \u201eg\u0103te\u0219te\u201d AWS serviciile sale elastice. Scalarea serverelor \u0219i bazelor de date\" src=\"\/wp-content\/uploads\/2019\/10\/9820acd5597cb80bd7c63060ed13a37f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nCum putem \u00eembun\u0103t\u0103\u021bi situa\u021bia? S\u0103 punem un proxy \u00eentre aplica\u021bie \u0219i nodul master.<\/p>\n<p><img decoding=\"async\" alt=\"Cum \u201eg\u0103te\u0219te\u201d AWS serviciile sale elastice. Scalarea serverelor \u0219i bazelor de date\" src=\"\/wp-content\/uploads\/2019\/10\/ba8265da6ef9b1c1f9ac27bccab73f5d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nCe ne va aduce asta? Acum nu trebuie s\u0103 redirec\u021bion\u0103m manual toate aplica\u021biile c\u0103tre noul nod. Comutarea poate fi realizat\u0103 prin proxy \u0219i va fi semnificativ mai rapid.<\/p>\n<p>Se pare c\u0103 problema a fost rezolvat\u0103. Dar nu, \u00eenc\u0103 suferim din cauza necesit\u0103\u021bii de \u00eenc\u0103lzire a cache-ului. \u00cen plus, a ap\u0103rut o nou\u0103 problem\u0103 - acum proxy-ul este un poten\u021bial punct de defectare.<\/p>\n<h3>Solu\u021bia final\u0103 cu Amazon Aurora serverless<\/h3>\n<p>\nCum am rezolvat aceste probleme?<\/p>\n<p><strong>Am p\u0103strat proxy-ul<\/strong>. Acesta nu este o instan\u021b\u0103 separat\u0103, ci o \u00eentreag\u0103 flot\u0103 distribuit\u0103 de proxy-uri, prin care aplica\u021biile se conecteaz\u0103 la baza de date. Orice nod \u00een cazul defect\u0103rii poate fi \u00eenlocuit aproape instantaneu.<\/p>\n<p><strong>Am ad\u0103ugat un rezervor de noduri calde de diferite dimensiuni<\/strong>. Prin urmare, atunci c\u00e2nd este necesar\u0103 alocarea unui nou nod mai mare sau mai mic, acesta este imediat disponibil. Nu trebuie s\u0103 a\u0219tept\u0103m p\u00e2n\u0103 se \u00eencarc\u0103.<\/p>\n<p><strong>\u00eentregul proces de scalare este controlat de un sistem specializat de monitorizare. <\/strong>Monitorizarea urm\u0103re\u0219te constant starea nodului principal curent. Dac\u0103 detecteaz\u0103, de exemplu, c\u0103 sarcina procesorului a atins o valoare critic\u0103, \u00eei va anun\u021ba pe instan\u021bele calde c\u0103 este necesar\u0103 alocarea unui nou nod.<\/p>\n<p><img decoding=\"async\" alt=\"Cum \u201eg\u0103te\u0219te\u201d AWS serviciile sale elastice. Scalarea serverelor \u0219i bazelor de date\" src=\"\/wp-content\/uploads\/2019\/10\/b5693b64e3468a4b6bcafb4fd5732bd8.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>Proxii distribui\u021bi, instan\u021be calde \u0219i monitorizare.<\/em><\/p>\n<p>Nodul de putere necesar\u0103 este disponibil. Pe acesta se copiaz\u0103 puzderile de buffer, iar sistemul \u00eencepe s\u0103 a\u0219tepte un moment sigur pentru comutare.<\/p>\n<p><img decoding=\"async\" alt=\"Cum \u201eg\u0103te\u0219te\u201d AWS serviciile sale elastice. Scalarea serverelor \u0219i bazelor de date\" src=\"\/wp-content\/uploads\/2019\/10\/fcbc5529352477b824cc969afd0a4fec.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDe obicei, momentul pentru comutare apare destul de repede. Atunci, comunica\u021bia \u00eentre proxi \u0219i vechiul nod principal este suspendat\u0103, toate sesiunile fiind comutate pe noul nod.<\/p>\n<p><img decoding=\"async\" alt=\"Cum \u201eg\u0103te\u0219te\u201d AWS serviciile sale elastice. Scalarea serverelor \u0219i bazelor de date\" src=\"\/wp-content\/uploads\/2019\/10\/b3b4af9be2cdd28aaaecd97cae48621d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nActivitatea cu baza de date este reluat\u0103.<\/p>\n<p><img decoding=\"async\" alt=\"Cum \u201eg\u0103te\u0219te\u201d AWS serviciile sale elastice. Scalarea serverelor \u0219i bazelor de date\" src=\"\/wp-content\/uploads\/2019\/10\/eeeae3ba3fc3ff014657f9786a25fd2f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPe grafic se vede c\u0103 suspendarea este, \u00eentr-adev\u0103r, foarte scurt\u0103. Pe graficul albastru este sarcina, iar pe treptele ro\u0219ii \u2014 momentele de scalare. Pic\u0103turile temporare din graficul albastru reprezint\u0103 exact acea \u00eent\u00e2rziere scurt\u0103.<\/p>\n<p><img decoding=\"async\" alt=\"Cum \u201eg\u0103te\u0219te\u201d AWS serviciile sale elastice. Scalarea serverelor \u0219i bazelor de date\" src=\"\/wp-content\/uploads\/2019\/10\/ac55eadb5f0b182b93fdd1617961a930.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nApropo, Amazon Aurora permite economisirea resurselor \u0219i oprirea bazei de date c\u00e2nd aceasta nu este folosit\u0103, de exemplu, \u00een weekend. Dup\u0103 oprire, sarcina bazei de date \u00ee\u0219i reduce treptat puterea \u0219i se deconecteaz\u0103 pentru o perioad\u0103 de timp. C\u00e2nd sarcina revine, aceasta se re\u00eentrege gradual.<\/p>\n<blockquote><p>\u00cen partea urm\u0103toare a pove\u0219tii despre dispozitivul Amazon, vom vorbi despre scalarea re\u021belei. Abona\u021bi-v\u0103 <noindex><a rel=\"nofollow\" href=\"http:\/\/eepurl.com\/VYVaf\">la newsletter<\/a><\/noindex> \u0219i urm\u0103ri\u021bi actualiz\u0103rile pentru a nu rata articolul.<\/p>\n<p>Pe <noindex><a rel=\"nofollow\" href=\"https:\/\/www.highload.ru\/moscow\/2019\">HighLoad++<\/a><\/noindex> Vasili Pantyuhin va sus\u021bine o prezentare intitulat\u0103 \u201e<noindex><a rel=\"nofollow\" href=\"https:\/\/www.highload.ru\/moscow\/2019\/abstracts\/5977\">Huston, avem o problem\u0103. Designul sistemelor rezistente, modelele de dezvoltare a serviciilor interne ale norului Amazon<\/a><\/noindex>\u201d. Ce modele de proiectare a sistemelor distribuite folose\u0219te Amazon, care sunt motivele posibile ale e\u0219ecurilor serviciilor, ce \u00eenseamn\u0103 arhitectura bazat\u0103 pe celule, Lucru constant, Shuffle Sharding \u2014 va fi interesant. Mai sunt mai pu\u021bin de o lun\u0103 p\u00e2n\u0103 la conferin\u021b\u0103 \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/conf.ontico.ru\/conference\/join\/hl2019.html\">rezerva\u021bi bilete<\/a><\/noindex>. 24 octombrie este termenul limit\u0103 pentru cre\u0219terea pre\u021burilor.<\/p><\/blockquote>\n<p>Sursa: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/oleg-bunin\/blog\/471686\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041e\u0431\u043b\u0430\u043a\u0430 \u043f\u043e\u0434\u043e\u0431\u043d\u044b \u043c\u0430\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0448\u043a\u0430\u0442\u0443\u043b\u043a\u0435 \u2014 \u0437\u0430\u0434\u0430\u0435\u0448\u044c, \u0447\u0442\u043e \u0442\u0435\u0431\u0435 \u043d\u0443\u0436\u043d\u043e, \u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u043e\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0438\u0437 \u043d\u0438\u043e\u0442\u043a\u0443\u0434\u0430. \u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043c\u0430\u0448\u0438\u043d\u044b, \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u0441\u0435\u0442\u044c \u2014 \u0432\u0441\u0435 \u044d\u0442\u043e \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435\u0431\u0435. \u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u0442\u0435\u043d\u0430\u043d\u0442\u044b \u043e\u0431\u043b\u0430\u043a\u0430, \u043d\u043e \u0432 \u0441\u0432\u043e\u0435\u0439 \u0412\u0441\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u0442\u044b \u0435\u0434\u0438\u043d\u043e\u043b\u0438\u0447\u043d\u044b\u0439 \u043f\u0440\u0430\u0432\u0438\u0442\u0435\u043b\u044c. \u0422\u044b \u0443\u0432\u0435\u0440\u0435\u043d, \u0447\u0442\u043e \u0432\u0441\u0435\u0433\u0434\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0448\u044c \u0442\u0440\u0435\u0431\u0443\u0435\u043c\u044b\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b, \u043d\u0438 \u0441 \u043a\u0435\u043c \u043d\u0435 \u0441\u0447\u0438\u0442\u0430\u0435\u0448\u044c\u0441\u044f \u0438 \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0448\u044c, \u043a\u0430\u043a\u043e\u0439 \u0431\u0443\u0434\u0435\u0442 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":39303,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-39302","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041e\u0431\u043b\u0430\u043a\u0430 \u043f\u043e\u0434\u043e\u0431\u043d\u044b \u043c\u0430\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0448\u043a\u0430\u0442\u0443\u043b\u043a\u0435 \u2014 \u0437\u0430\u0434\u0430\u0435\u0448\u044c, \u0447\u0442\u043e \u0442\u0435\u0431\u0435 \u043d\u0443\u0436\u043d\u043e, \u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u043e\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0438\u0437 \u043d\u0438\u043e\u0442\u043a\u0443\u0434\u0430. \u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043c\u0430\u0448\u0438\u043d\u044b, \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u0441\u0435\u0442\u044c \u2014 \u0432\u0441\u0435 \u044d\u0442\u043e \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435\u0431\u0435.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/kak-aws-varit-svoi-elastichnye-servisy-masshtabirovanie-serverov-i-bazy-dannyh\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041a\u0430\u043a AWS \u00ab\u0432\u0430\u0440\u0438\u0442\u00bb \u0441\u0432\u043e\u0438 \u044d\u043b\u0430\u0441\u0442\u0438\u0447\u043d\u044b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b. \u041c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0438 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041e\u0431\u043b\u0430\u043a\u0430 \u043f\u043e\u0434\u043e\u0431\u043d\u044b \u043c\u0430\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0448\u043a\u0430\u0442\u0443\u043b\u043a\u0435 \u2014 \u0437\u0430\u0434\u0430\u0435\u0448\u044c, \u0447\u0442\u043e \u0442\u0435\u0431\u0435 \u043d\u0443\u0436\u043d\u043e, \u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u043e\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0438\u0437 \u043d\u0438\u043e\u0442\u043a\u0443\u0434\u0430. \u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043c\u0430\u0448\u0438\u043d\u044b, \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u0441\u0435\u0442\u044c \u2014 \u0432\u0441\u0435 \u044d\u0442\u043e \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435\u0431\u0435.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/kak-aws-varit-svoi-elastichnye-servisy-masshtabirovanie-serverov-i-bazy-dannyh\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:29:40+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:29:40+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Cum \u201eg\u0103te\u0219te\u201d AWS serviciile sale elastice. Scalarea serverelor \u0219i bazelor de date | ProHoster","description":"Norii sunt ca o cutie magic\u0103 \u2014 ceri ce ai nevoie \u0219i resursele apar pur \u0219i simplu din neant. Ma\u0219inile virtuale, baze de date, re\u021bea \u2014 toate acestea \u00ee\u021bi apar\u021bin doar \u021bie.","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/kak-aws-varit-svoi-elastichnye-servisy-masshtabirovanie-serverov-i-bazy-dannyh","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"ro_RO","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041a\u0430\u043a AWS \u00ab\u0432\u0430\u0440\u0438\u0442\u00bb \u0441\u0432\u043e\u0438 \u044d\u043b\u0430\u0441\u0442\u0438\u0447\u043d\u044b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b. \u041c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0438 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 | ProHoster","og:description":"\u041e\u0431\u043b\u0430\u043a\u0430 \u043f\u043e\u0434\u043e\u0431\u043d\u044b \u043c\u0430\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0448\u043a\u0430\u0442\u0443\u043b\u043a\u0435 \u2014 \u0437\u0430\u0434\u0430\u0435\u0448\u044c, \u0447\u0442\u043e \u0442\u0435\u0431\u0435 \u043d\u0443\u0436\u043d\u043e, \u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u043e\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0438\u0437 \u043d\u0438\u043e\u0442\u043a\u0443\u0434\u0430. \u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043c\u0430\u0448\u0438\u043d\u044b, \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u0441\u0435\u0442\u044c \u2014 \u0432\u0441\u0435 \u044d\u0442\u043e \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435\u0431\u0435.","og:url":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/kak-aws-varit-svoi-elastichnye-servisy-masshtabirovanie-serverov-i-bazy-dannyh","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:29:40+00:00","article:modified_time":"2019-10-31T19:29:40+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"39302","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-24 01:37:20","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 00:52:26","updated":"2026-01-24 01:37:20","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/39302","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=39302"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/39302\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media\/39303"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=39302"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=39302"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=39302"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}