{"id":73446,"date":"2020-03-09T20:41:59","date_gmt":"2020-03-09T17:41:59","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/pochemu-mozhet-ponadobitsya-polusinhronnaya-replikacziya"},"modified":"2020-03-09T20:41:59","modified_gmt":"2020-03-09T17:41:59","slug":"pochemu-mozhet-ponadobitsya-polusinhronnaya-replikacziya","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/pochemu-mozhet-ponadobitsya-polusinhronnaya-replikacziya","title":{"rendered":"Miks v\u00f5ib vajalik olla pool-s\u00fcnkroonne replikatsioon?","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><i>Tere k\u00f5igile. Olen Vladislav Rodin. Praegu \u00f5petan OTUS platvormil kursusi, mis k\u00e4sitlevad tarkvaraarhitektuuri ja k\u00f5rge koormusega tarkvaraarhitektuuri. <b>Uue kursuse r\u00fchma k\u00e4ivitamise eel. <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/jvDY\/\">\u201eK\u00f5rge koormusega arhitekti\u201d<\/a><\/noindex> otsustasin kirjutada l\u00fchikese eksklusiivmaterjali, millega tahan teiega jagada.<\/b><\/i><\/p>\n<p><img decoding=\"async\" alt=\"Miks v\u00f5ib vajalik olla pool-s\u00fcnkroonne replikatsioon?\" src=\"\/wp-content\/uploads\/2020\/03\/c2a1ea514249f8fca1ab9f668a899981.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h2>Sissejuhatus<\/h2>\n<p>\n\u0418\u0437-\u0437\u0430 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u043d\u0430 HDD \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c\u0441\u044f \u043b\u0438\u0448\u044c \u043f\u043e\u0440\u044f\u0434\u043a\u0430 400-700 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443 (\u0447\u0442\u043e \u043d\u0435\u0441\u0440\u0430\u0432\u043d\u0438\u043c\u043e \u0441 \u0442\u0438\u043f\u0438\u0447\u043d\u044b\u043c\u0438 rps&#8217;\u0430\u043c\u0438, \u043f\u0440\u0438\u0445\u043e\u0434\u044f\u0449\u0438\u043c\u0438\u0441\u044f \u043d\u0430 \u0432\u044b\u0441\u043e\u043a\u043e\u043d\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443), \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0434\u0438\u0441\u043a\u043e\u0432\u0430\u044f \u0431\u0430\u0437\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0443\u0437\u043a\u0438\u043c \u0433\u043e\u0440\u043b\u044b\u0448\u043a\u043e\u043c \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u0434\u0435\u043b\u0438\u0442\u044c \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043f\u0430\u0442\u0442\u0435\u0440\u043d\u0430\u043c \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430.<\/p>\n<p>Praegu on kaks andmebaasi skaleerimise mustrit: replikatsioon ja shardimine. Shardimine v\u00f5imaldab skaleerida kirjutamisoperatsioone ning seel\u00e4bi v\u00e4hendada rps-i, mis langeb \u00fche serveri mingsesse klastrisse. Replikatsioon v\u00f5imaldab teha sama lugemisoperatsioonidega. Just sellele mustrile on p\u00fchendatud k\u00e4esolev artikkel.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>Replikatsioon<\/h2>\n<p>\nKui vaadata replikatsiooni t\u00e4iesti \u00fcldiselt, siis on see lihtne asi: teil oli \u00fcks server, kus olid andmed, ja siis see server l\u00f5petas nende andmete lugemiseks koormuse talumise. Te lisate veel paar serverit, s\u00fcnkroonite andmed k\u00f5igis serverites ja kasutaja saab lugeda teie klastrist mis tahes serverist. <\/p>\n<p>Hoolimata n\u00e4ilisest lihtsusest on mitmeid variante, kuidas klassifitseerida erinevaid rakendusi sellele skeemile:<\/p>\n<ul>\n<li>Klastri rollide j\u00e4rgi (master-master v\u00f5i master-slave)<\/li>\n<li>Saadetavate objektide j\u00e4rgi (ridade p\u00f5hjal, lause p\u00f5hjal v\u00f5i segatud)<\/li>\n<li>S\u00f5lmede s\u00fcnkroonimismehhanismi j\u00e4rgi<\/li>\n<\/ul>\n<p>\nT\u00e4na keskendume just kolmandale punktile. <\/p>\n<h2>Kuidas toimub tehingu kommitimine<\/h2>\n<p>\nSee teema ei ole otseselt seotud replikatsiooniga, sellest v\u00f5iks kirjutada eraldi artikli, kuid kuna tehingu kommitimise mehhanismi m\u00f5istmata on edasine lugemine kasutu, luban endale meenutada k\u00f5ige olulisemaid aspekte. Tehingu kommitimine toimub kolmes etapis:<\/p>\n<ol>\n<li>Tehingu salvestamine andmebaasi \u017eurnali.<\/li>\n<li>Tehingu rakendamine andmebaasi mootori poolt.<\/li>\n<li>Kliendile kinnituse saatmine tehingu eduka rakendamise kohta.<\/li>\n<\/ol>\n<p>\nErinevates andmetes v\u00f5ib selle algoritmi puhul esineda n\u00fcansse: n\u00e4iteks MySQL InnoDB mootoris on 2 logifaili: \u00fcks replikatsiooni jaoks (binary log) ja teine ACIDi s\u00e4ilitamiseks (undo\/red log), samas kui PostgreSQL-is on \u00fcks log, mis t\u00e4idab m\u00f5lemat funktsiooni (write ahead log = WAL). \u00dclal on esitatud just \u00fcldine kontseptsioon, mis v\u00f5imaldab selliseid n\u00fcansse mitte arvesse v\u00f5tta.<\/p>\n<h2>S\u00fcnkroonne (sync) replikatsioon<\/h2>\n<p>\nLisame tehingu kinnitamise algoritmi loogika muudatuste replikatsiooniks:<\/p>\n<ol>\n<li>Tehingu salvestamine andmebaasi \u017eurnali.<\/li>\n<li>Tehingu rakendamine andmebaasi mootori poolt.<\/li>\n<li><b>Andmete saatmine k\u00f5igile repliikidele.<\/b><\/li>\n<li><b>Kinnituse saamine k\u00f5igilt repliikidelt tehingu t\u00e4itmise kohta.<\/b><\/li>\n<li>Kliendile kinnituse saatmine tehingu eduka rakendamise kohta.<\/li>\n<\/ol>\n<p>\nSelle l\u00e4henemise korral saame mitmeid puudusi: <\/p>\n<ul>\n<li>klient ootab muudatuste rakendamist k\u00f5igile repliikidele.<\/li>\n<li>n\u00f5lkude arvu suurenedes klastris v\u00e4hendame t\u00f5en\u00e4osust, et kirjeoperatsioon \u00f5nnestub.<\/li>\n<\/ul>\n<p>\nKui esimese punktiga on k\u00f5ik enam-v\u00e4hem selge, siis teise punktiga seotud p\u00f5hjuseid tasub selgitada. Kui s\u00fcnkroonses replikatsioonis ei saa me vastust v\u00e4hemalt \u00fche nodi kohta, t\u00fchistame tehingu. Niisiis, suurendades nodide arvu klastris, suurendate t\u00f5en\u00e4osust, et kirjeoperatsioon kukub l\u00e4bi. <\/p>\n<p>Kas saame oodata kinnitust vaid teatud osast s\u00f5lmedest, n\u00e4iteks 51% (kvorum)? Jah, saame, kuid klassikalises variandis on vajalik kinnitus k\u00f5igilt s\u00f5lmedelt, kuna just nii suudame tagada andmete t\u00e4ieliku j\u00e4rjepidevuse klastris, mis on selle t\u00fc\u00fcpi replikatsiooni selge eelis.<\/p>\n<h2>As\u00fcnkrooniline (async) replikatsioon<\/h2>\n<p>\nMuudame eelmist algoritmi. Andmed replikatsioonide jaoks saadame \u201ekunagi hiljem\u201d, ning \u201ekunagi hiljem\u201d rakendatakse muudatused replikatsioonides:<\/p>\n<ol>\n<li>Tehingu salvestamine andmebaasi \u017eurnali.<\/li>\n<li>Tehingu rakendamine andmebaasi mootori poolt.<\/li>\n<li>Kliendile kinnituse saatmine tehingu eduka rakendamise kohta.<\/li>\n<li><b>Andmete saatmine replikatsioonidele ja muudatuste rakendamine nende poolt.<\/b><\/li>\n<\/ol>\n<p>\nSee l\u00e4henemine tagab, et klaster t\u00f6\u00f6tab kiiresti, sest me ei hoia klienti ootamas, kuni andmed replikatsioonidele j\u00f5uavad ja seal kinni peetakse.<\/p>\n<p>Kuid tingimus, et andmed saadetakse replikatsioonidele \u201ekunagi hiljem\u201d, v\u00f5ib viia tehingu kadumiseni, sealhulgas kinnitatud tehingu kadumiseni kasutajale, sest kui andmed ei j\u00f5udnud replikatsioonidesse, saadetakse kliendile kinnituse\u00f5nnestumise teade, kuid s\u00f5lmel, kuhu muudatused tulid, v\u00f5ib HDD maha kukkuda ning me kaotame tehingu, mis v\u00f5ib p\u00f5hjustada v\u00e4ga ebameeldivaid tagaj\u00e4rgi.<\/p>\n<h2>Pool-s\u00fcnkroonne (semisync) replikaat<\/h2>\n<p>\nL\u00f5puks oleme j\u00f5udnud pool-s\u00fcnkroonse replikatsiooni juurde. See replikatsiooni t\u00fc\u00fcp ei ole eriti tuntud ega laialdaselt levinud, kuid see pakkub suurt huvi, kuna suudab kombineerida nii s\u00fcnkroonse kui ka as\u00fcnkroonse replikatsiooni eeliseid.<\/p>\n<p>Proovime \u00fchendada kahe eelneva l\u00e4henemise. Ei hoia klienti kaua, kuid n\u00f5uame, et andmed replitseeruksid:<\/p>\n<ol>\n<li>Tehingu salvestamine andmebaasi \u017eurnali.<\/li>\n<li>Tehingu rakendamine andmebaasi mootori poolt.<\/li>\n<li><b>Andmete saatmine replikatele.<\/b><\/li>\n<li><b>Kinnituse saamine replikalt muudatuste vastuv\u00f5tu kohta (rakendatakse \u201ekunagi hiljem\u201c).<\/b><\/li>\n<li>Kliendile kinnituse saatmine tehingu eduka rakendamise kohta.<\/li>\n<\/ol>\n<p>\nPange t\u00e4hele, et sellise algoritmi korral toimub tehingu kadu ainult juhul, kui niss, mis kuulab muudatusi, ja replikatsiooni niss kukuvad kokku. Sellise t\u00f5rke t\u00f5en\u00e4osus tunnistatakse madalaks ning andmed v\u00f5tavad need riskid ette. <\/p>\n<p>Kuid sellise l\u00e4henemise korral on v\u00f5imalik fantoomlugemise risk. Kujutame ette j\u00e4rgmisi stsenaariume: sammude 4 puhul ei ole me saanud kinnitust \u00fcheltki koopiatelt. Me peame selle tehingu tagasi keerama, kuid kliendile ei tohi kinnitust saata. Kuna andmed on rakendatud sammude 2 puhul, tekib ajavahemik sammude 2 l\u00f5petamise ja tehingu tagasiv\u00f5tmise vahel, mille jooksul saavad paralleelsed tehingud n\u00e4ha neid muudatusi, mida andmebaasis ei tohiks olla. <\/p>\n<h2>Lose-less semis\u00fcnkroonne replikatsioon<\/h2>\n<p>\nKui veidi aega m\u00f5elda, siis saab lihtsalt vahetades algoritmi samme kohendada fantoomlugemise probleemi antud stsenaariumis:<\/p>\n<ol>\n<li>Tehingu salvestamine andmebaasi \u017eurnali.<\/li>\n<li><b>Koopia andmete saatmine.<\/b><\/li>\n<li><b>Kinnituse saamine replikalt muudatuste vastuv\u00f5tu kohta (rakendatakse \u201ekunagi hiljem\u201c).<\/b><\/li>\n<li>Tehingu rakendamine andmebaasi mootori poolt.<\/li>\n<li>Kliendile kinnituse saatmine tehingu eduka rakendamise kohta.<\/li>\n<\/ol>\n<p>\nN\u00fc\u00fcd kinnitame muudatusi ainult siis, kui need on kopeeritud. <\/p>\n<h2>Kokkuv\u00f5te<\/h2>\n<p>\nNagu alati, ideaalset lahendust ei ole, vaid on lahenduste kogum, kus iga\u00fchel on oma eelised ja puudused, mis sobivad erinevate \u00fclesannete lahendamiseks. See kehtib ka replikeeritud andmebaasi andmete s\u00fcnkroonimise mehhanismi valiku kohta. Pool-s\u00fcnkroonsel replikatsioonil on piisavalt tugevaid ja huvitavaid eeliseid, et see v\u00e4\u00e4rib t\u00e4helepanu, vaatamata oma v\u00e4hesele levikule.<\/p>\n<p><b>Sellega on k\u00f5ik. Kohtumiseni <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/jvDY\/\">kursusel<\/a><\/noindex>!<\/b><br \/>\n<br \/>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/otus\/blog\/491106\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442. \u041d\u0430 \u0441\u0432\u044f\u0437\u0438 \u0412\u043b\u0430\u0434\u0438\u0441\u043b\u0430\u0432 \u0420\u043e\u0434\u0438\u043d. \u0412 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u044f \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u044e \u043d\u0430 \u043f\u043e\u0440\u0442\u0430\u043b\u0435 OTUS \u043a\u0443\u0440\u0441\u044b, \u043f\u043e\u0441\u0432\u044f\u0449\u0435\u043d\u043d\u044b\u0435 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435 \u041f\u041e \u0438 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435 \u041f\u041e, \u043f\u043e\u0434\u0432\u0435\u0440\u0436\u0435\u043d\u043d\u043e\u0433\u043e \u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0435. \u0412 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0440\u0442\u0430 \u043d\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u0442\u043e\u043a\u0430 \u043a\u0443\u0440\u0441\u0430 \u00ab\u0410\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u043e\u0440 \u0432\u044b\u0441\u043e\u043a\u0438\u0445 \u043d\u0430\u0433\u0440\u0443\u0437\u043e\u043a\u00bb \u044f \u0440\u0435\u0448\u0438\u043b \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0430\u0432\u0442\u043e\u0440\u0441\u043a\u0438\u0439 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b, \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0445\u043e\u0447\u0443 \u043f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f \u0441 \u0432\u0430\u043c\u0438. \u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0418\u0437-\u0437\u0430 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u043d\u0430 HDD \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c\u0441\u044f \u043b\u0438\u0448\u044c \u043f\u043e\u0440\u044f\u0434\u043a\u0430 400-700 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":73447,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-73446","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442. \u041d\u0430 \u0441\u0432\u044f\u0437\u0438 \u0412\u043b\u0430\u0434\u0438\u0441\u043b\u0430\u0432 \u0420\u043e\u0434\u0438\u043d. \u0412 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u044f \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u044e \u043d\u0430 \u043f\u043e\u0440\u0442\u0430\u043b\u0435 OTUS \u043a\u0443\u0440\u0441\u044b, \u043f\u043e\u0441\u0432\u044f\u0449\u0435\u043d\u043d\u044b\u0435 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435 \u041f\u041e \u0438 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435 \u041f\u041e, \u043f\u043e\u0434\u0432\u0435\u0440\u0436\u0435\u043d\u043d\u043e\u0433\u043e \u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0435. \u0412 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0440\u0442\u0430 \u043d\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u0442\u043e\u043a\u0430 \u043a\u0443\u0440\u0441\u0430 \u00ab\u0410\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u043e\u0440 \u0432\u044b\u0441\u043e\u043a\u0438\u0445 \u043d\u0430\u0433\u0440\u0443\u0437\u043e\u043a\u00bb \u044f \u0440\u0435\u0448\u0438\u043b \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0430\u0432\u0442\u043e\u0440\u0441\u043a\u0438\u0439 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b, \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0445\u043e\u0447\u0443 \u043f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f \u0441 \u0432\u0430\u043c\u0438. \u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0418\u0437-\u0437\u0430 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u043d\u0430 HDD \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c\u0441\u044f \u043b\u0438\u0448\u044c \u043f\u043e\u0440\u044f\u0434\u043a\u0430 400-700\" \/>\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\/et\/blog\/administrirovanie\/pochemu-mozhet-ponadobitsya-polusinhronnaya-replikacziya\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\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\u041f\u043e\u0447\u0435\u043c\u0443 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u043f\u043e\u043b\u0443\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u0430\u044f \u0440\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u044f? | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442. \u041d\u0430 \u0441\u0432\u044f\u0437\u0438 \u0412\u043b\u0430\u0434\u0438\u0441\u043b\u0430\u0432 \u0420\u043e\u0434\u0438\u043d. \u0412 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u044f \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u044e \u043d\u0430 \u043f\u043e\u0440\u0442\u0430\u043b\u0435 OTUS \u043a\u0443\u0440\u0441\u044b, \u043f\u043e\u0441\u0432\u044f\u0449\u0435\u043d\u043d\u044b\u0435 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435 \u041f\u041e \u0438 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435 \u041f\u041e, \u043f\u043e\u0434\u0432\u0435\u0440\u0436\u0435\u043d\u043d\u043e\u0433\u043e \u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0435. \u0412 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0440\u0442\u0430 \u043d\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u0442\u043e\u043a\u0430 \u043a\u0443\u0440\u0441\u0430 \u00ab\u0410\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u043e\u0440 \u0432\u044b\u0441\u043e\u043a\u0438\u0445 \u043d\u0430\u0433\u0440\u0443\u0437\u043e\u043a\u00bb \u044f \u0440\u0435\u0448\u0438\u043b \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0430\u0432\u0442\u043e\u0440\u0441\u043a\u0438\u0439 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b, \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0445\u043e\u0447\u0443 \u043f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f \u0441 \u0432\u0430\u043c\u0438. \u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0418\u0437-\u0437\u0430 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u043d\u0430 HDD \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c\u0441\u044f \u043b\u0438\u0448\u044c \u043f\u043e\u0440\u044f\u0434\u043a\u0430 400-700\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/pochemu-mozhet-ponadobitsya-polusinhronnaya-replikacziya\" \/>\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=\"2020-03-09T17:41:59+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-03-09T17:41:59+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\udd47Miks v\u00f5ib vajada pool-s\u00fcnkroonset replikatsiooni? | ProHoster","description":"Tere k\u00f5igile. Mina olen Vladislav Rodin. Hetkel \u00f5petan OTUS portaalis, kus on kursused, mis k\u00e4sitlevad tarkvara arhitektuuri ja k\u00f5rge koormusega tarkvara arhitektuuri. Seoses uue kursuse \u201eK\u00f5rge koormuse arhitekt\u201d algusega otsustasin kirjutada v\u00e4ikese isikliku materjali, mille soovin teiega jagada. Sissejuhatus: Kuna HDD-l v\u00f5ib toimuda ainult umbes 400-700","canonical_url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/pochemu-mozhet-ponadobitsya-polusinhronnaya-replikacziya","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","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\u041f\u043e\u0447\u0435\u043c\u0443 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u043f\u043e\u043b\u0443\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u0430\u044f \u0440\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u044f? | ProHoster","og:description":"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442. \u041d\u0430 \u0441\u0432\u044f\u0437\u0438 \u0412\u043b\u0430\u0434\u0438\u0441\u043b\u0430\u0432 \u0420\u043e\u0434\u0438\u043d. \u0412 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u044f \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u044e \u043d\u0430 \u043f\u043e\u0440\u0442\u0430\u043b\u0435 OTUS \u043a\u0443\u0440\u0441\u044b, \u043f\u043e\u0441\u0432\u044f\u0449\u0435\u043d\u043d\u044b\u0435 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435 \u041f\u041e \u0438 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435 \u041f\u041e, \u043f\u043e\u0434\u0432\u0435\u0440\u0436\u0435\u043d\u043d\u043e\u0433\u043e \u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0435. \u0412 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0440\u0442\u0430 \u043d\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u0442\u043e\u043a\u0430 \u043a\u0443\u0440\u0441\u0430 \u00ab\u0410\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u043e\u0440 \u0432\u044b\u0441\u043e\u043a\u0438\u0445 \u043d\u0430\u0433\u0440\u0443\u0437\u043e\u043a\u00bb \u044f \u0440\u0435\u0448\u0438\u043b \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0430\u0432\u0442\u043e\u0440\u0441\u043a\u0438\u0439 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b, \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0445\u043e\u0447\u0443 \u043f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f \u0441 \u0432\u0430\u043c\u0438. \u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0418\u0437-\u0437\u0430 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u043d\u0430 HDD \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c\u0441\u044f \u043b\u0438\u0448\u044c \u043f\u043e\u0440\u044f\u0434\u043a\u0430 400-700","og:url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/pochemu-mozhet-ponadobitsya-polusinhronnaya-replikacziya","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":"2020-03-09T17:41:59+00:00","article:modified_time":"2020-03-09T17:41:59+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"73446","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":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 11:50:08","updated":"2022-09-28 11:57:57"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/73446","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=73446"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/73446\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media\/73447"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=73446"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=73446"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=73446"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}