卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

為什么要讀寫分離 對(duì)mysql進(jìn)行讀寫分離的中間件有哪些?

對(duì)mysql進(jìn)行讀寫分離的中間件有哪些?MySQL proxy是MySQL官方的中間件產(chǎn)品,可以實(shí)現(xiàn)負(fù)載均衡、讀寫分離、故障轉(zhuǎn)移等功能,但不支持大量的數(shù)據(jù)庫(kù)和表,性能較差。其他MySQL開源中間件產(chǎn)品

對(duì)mysql進(jìn)行讀寫分離的中間件有哪些?

MySQL proxy是MySQL官方的中間件產(chǎn)品,可以實(shí)現(xiàn)負(fù)載均衡、讀寫分離、故障轉(zhuǎn)移等功能,但不支持大量的數(shù)據(jù)庫(kù)和表,性能較差。

其他MySQL開源中間件產(chǎn)品有:Atlas、Cobar、tddl。您可以查看相關(guān)信息及其優(yōu)缺點(diǎn)。

MySQL主從復(fù)制能完美解決數(shù)據(jù)庫(kù)的單點(diǎn)問(wèn)題嗎?為什么?

使用主從時(shí),實(shí)際上放棄了強(qiáng)一致性。由于受試者只問(wèn)一個(gè)問(wèn)題,我們不考慮訪問(wèn)次數(shù)的問(wèn)題。換句話說(shuō),假設(shè)主從復(fù)制可以完全支持當(dāng)前的系統(tǒng)訪問(wèn)。)

通用數(shù)據(jù)庫(kù)主從設(shè)置:

主數(shù)據(jù)庫(kù)可以讀寫

即系統(tǒng)可以同時(shí)從主數(shù)據(jù)庫(kù)和從數(shù)據(jù)庫(kù)獲取數(shù)據(jù)。數(shù)據(jù)寫入主庫(kù)后,會(huì)自動(dòng)同步到從庫(kù)。

這構(gòu)成了一個(gè)簡(jiǎn)單的分布式系統(tǒng)。根據(jù)cap定理,三個(gè)中只能選擇一個(gè)。如果一致性很強(qiáng),則不會(huì)提高系統(tǒng)的可用性,反而會(huì)降低系統(tǒng)的可用性。

讓我們看看上面的主從結(jié)構(gòu)中可能出現(xiàn)什么問(wèn)題:

系統(tǒng)寫入主數(shù)據(jù)庫(kù),然后從主數(shù)據(jù)庫(kù)進(jìn)行查詢。這是一個(gè)單點(diǎn)數(shù)據(jù)庫(kù),沒(méi)有影響。

-如果數(shù)據(jù)已同步,則沒(méi)有影響

-如果數(shù)據(jù)未同步,則會(huì)查詢舊數(shù)據(jù)

-如果同步有問(wèn)題,則會(huì)斷開主設(shè)備和從設(shè)備的連接。如果系統(tǒng)無(wú)法感知它,那么查詢可能總是舊數(shù)據(jù)。這里我們需要監(jiān)視同步。當(dāng)同步出現(xiàn)問(wèn)題時(shí),我們應(yīng)該及時(shí)處理

掛斷庫(kù)。主數(shù)據(jù)不能與從數(shù)據(jù)同步。如果主從交換機(jī)是自動(dòng)的,單點(diǎn)故障的概率只會(huì)降低50%(如果主數(shù)據(jù)庫(kù)或備用數(shù)據(jù)庫(kù)發(fā)生故障,并且沒(méi)有人恢復(fù))。

mysql表數(shù)據(jù)量太大,達(dá)到了1億多條數(shù)據(jù),除了分庫(kù)分表之外,還有沒(méi)有其他的解決方式?

在正常配置下,MySQL只能承載2000萬(wàn)數(shù)據(jù)(同時(shí)讀寫,表中有大文本字段,單服務(wù)器)?,F(xiàn)在已經(jīng)超過(guò)1億,而且還在增加,建議按以下方式處理:

1子表。它可以按時(shí)間或一定的規(guī)則進(jìn)行拆分,以便盡可能地查詢子表中的數(shù)據(jù)庫(kù)。這是最有效的方法。特別是寫,放入一個(gè)新表,并定期同步。如果記錄不斷更新,最好將寫入的數(shù)據(jù)放在redis中,并定期同步表3的大文本字段,將它們分隔成一個(gè)新的獨(dú)立表。對(duì)于較大的文本字段,可以使用NoSQL數(shù)據(jù)庫(kù)

4優(yōu)化體系結(jié)構(gòu),或者優(yōu)化SQL查詢,避免聯(lián)合表查詢,盡量不要使用count(*)、in、recursion等性能消耗語(yǔ)句

5使用內(nèi)存緩存,或者在前端讀取時(shí)增加緩存數(shù)據(jù)庫(kù)。重復(fù)讀取時(shí),直接從緩存中讀取。

以上是一種低成本的管理方法,基本上幾個(gè)服務(wù)器就可以做到,但是管理起來(lái)有點(diǎn)麻煩。

當(dāng)然,如果總體數(shù)據(jù)量特別大,并且您不關(guān)心投資成本,請(qǐng)使用集群或tidb