Cross-reģiona replikācija MySQL-metode datu kopēšanai asinhroni no primārās datu bāzes vienā ģeogrāfiskajā reģionā uz vienu vai vairākām replikas datu bāzēm dažādos reģionos, ietekmē veiktspēju, izmantojot dažādus faktorus, kas saistīti ar tīkla latentumu, replikācijas nobīdi, darba slodzes sadalījumu un resursu sadali.
tīkla latentums un replikācijas nobīde
Galvenā veiktspējas ietekme rodas no palielinātas tīkla latentuma starp reģioniem. Tā kā pārrobežu replikācija ir atkarīga no bināro žurnāla notikumu nosūtīšanas, kas satur datu izmaiņas tālsatiksmes tīkla saitēs, fiziskais attālums var izraisīt ievērojamu izplatīšanās kavēšanos. Tas palielina replikācijas nobīdi, kur replikas atpaliek no primārajiem izmaiņām. Replikācijas nobīde var ietekmēt lasīšanas konsekvenci lietojumprogrammās, kas paļaujas uz jaunākajiem replikāciju datiem, un var palielināt kļūmjūras laiku katastrofu atkopšanas scenārijos.
Replikācijas nobīde notiek vairāku cēloņu dēļ:
- Primārais serveris, kas nesūtīja izmaiņas pietiekami ātri.
- Tīkls aizkavē izmaiņu pārsūtīšanu.
- Replikas servera nespēja ātri piemērot izmaiņas.
Kopējais novērotais nobīde ir saistīts gan ar tīkla, gan apstrādes latentumu. Uzraudzības rīki izseko metriku, piemēram, tīkla nobīde un replikas nobīde, lai diagnosticētu sašaurinājumus.
Replica servera ietekme un resursu izmantošana
Replikas pusē izmaiņas no primārā ir saistīta ar I/O un CPU darbu, kas var ietekmēt kopējo replikas veiktspēju, it īpaši, ja tas vienlaikus rīkojas arī ar lietojumprogrammu lasīšanas jautājumiem. Augsta replikācijas slodze var izraisīt strīdus un piesātinājumu ar resursiem, palēninot vaicājuma reakcijas laiku replikā.
Paralēlu replikācijas pavedienu izmantošana replikā var mazināt daļu no lietojumprogrammu kavējumiem, vienlaikus izmantojot vairākus darījumus, uzlabojot replikācijas caurlaidspēju. Turklāt, konfigurējot tādas opcijas kā augstas veiktspējas skalošana (pielāgošana `innodb_flush_log_at_trx_commit` un` sync_binlog` parametri) var uzlabot rakstīšanu un replikāciju piemērot efektivitāti.
Ietekme uz primārā servera veiktspēju
Primārajam serverim replikācijas dēļ ir arī slodzes ietekme. Tam jāraksta visas izmaiņas binārajā žurnālā pakārtotajām replikām, kas ir papildu pieskaitāmās izmaksas par normālu darījumu apstrādi. Tā kā daudzas replikas ir savienotas, it īpaši savstarpēja reģiona, kur mainās tīkla caurlaidspēja un uzticamība, primārajam var rasties palielināts resursu patēriņš, uzturot replikācijas plūsmas.
Viens no veidiem, kā mazināt to, ir replikācijas hierarhija, kurā primārais atkārtojas vienai starpposma replikai, kas pēc tam ventilatorus iziet uz papildu replikām, samazinot primāro slodzi.
darba slodzes sadalījums un mērogojamība
Cross-reģiona replikācija atbalsta nolasīšanas slodzes mērogošanu tuvāk lietotājiem dažādos globālos reģionos, nodrošinot lasīšanas replikas tuvumā to atrašanās vieta, uzlabojot galalietotāju latentumu. Tomēr darba slodzes rakstīšana joprojām saplūst primārajā instancē, kas var kļūt par sašaurinājumu.
Lieli darījumi ar primāro, kas atjaunina daudzas rindas, var izraisīt replikācijas datu pieaugumu, kā rezultātā replikācijas pārrāvumi izmanto darbu pie replikām un izraisot replikācijas nobīdi. Lielu darījumu sadalīšana mazākās partijās palīdz samazināt replikācijas celmu.
shēmas un vaicājuma dizaina apsvērumi
Tabulas bez primārajām taustiņiem vai ar smagām DDL operācijām var pasliktināt replikācijas veiktspēju vai izraisīt ekskluzīvas slēdzenes, apvienojot latentuma problēmas dažādos reģionos. Parasti ir ieteicams izmantot replikāciju uz rindām, kurām ir nepieciešami primārie taustiņi efektivitātei.
Vaicājumu izolācijas līmeņi replikās ietekmē arī replikācijas pielietojuma ātrumu ar zemāku izolācijas līmeni (piemēram, “lasāms apņēmīgs”), kas parasti ļauj ātrāk izmantot replikācijas notikumus nekā augstākos līmeņos, kas ilgāk tur slēdzenes.
tīkla un izmaksu apsvērumi
Cross-reģiona replikācija ietver datu pārsūtīšanu mākoņa pakalpojumu sniedzēju tīklos, kas var rasties izmaksas un joslas platuma ierobežojumus. Tas ir jāņem vērā projektēšanā un tas var netieši ierobežot replikācijas ātrumu un biežumu.
veiktspējas ietekmes kopsavilkums
- palielināta replikācijas nobīde fiziskā attāluma un tīkla latentuma dēļ.
- Lielāks resursu patēriņš primārajam binārai reģistrēšanai un replikām izmaiņu piemērošanai.
- Potenciāla vaicājuma veiktspējas degradācija repliku gadījumā, ja replikācija ir intensīva resursos.
- Slodzes līdzsvarošana, izmantojot replikācijas hierarhijas, var samazināt sašaurinājumus.
- Lielu darījumu un shēmas dizaina ietekme uz replikācijas efektivitāti.
- kompromisi ar datu pārsūtīšanas izmaksām un caurlaidspēju mākoņu vidē.