Assalomu alaykum, database replicationdan asosiy maqsad read(SELECT)larni tezlashtirish. Masalan, 1 ta slave 10 k QPSga (faqat read) aktiv javob bera olsa, 3 ta follower slave qo'shish orqali bu tezlikni 3 marta tezlashtirish mumkin.
Xuddi API leveldagi load balancerga o'xshab.
Replication write(INSERT, UPDATE, DELETE)larni yaxshilamaydi. Shu bilan birga deyarli sekinlashtirmaydi ham. Sababi, master slavega yangi record yozilganda boshqa slavelar ham copy qilishini kutib(sinxronlash), master slavedagi asosiy threadni block qilmasdan, bu haqida qolganlarga xabar berib, ishini davom etadi. Follower slavelar esa bu recorddan xabar topib, o'zlariga yozib qo'yadi.
Bu qaysidir taraflama EDAga o'xshab ketadi.
Database replication aslida real-time emas. Sababi, record master slavega yozilgandan keyin hamma followerlar sinxronlangunicha millisekundlar vaqt ketadi. Shuning hisobiga data inconsistency kelib chiqishi ehtimoli yo'q emas(o'sha millisekundda follower slaveda read query execute bo'lsa). Lekin buning ehtimoli juda kam.
Post #155
788
Forwarded from Bobosher Musurmonov