成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

阿里P8架構(gòu)師談:數(shù)據(jù)庫(kù)中間件的功能、適用場(chǎng)景、淘寶TDDL詳解

運(yùn)維 數(shù)據(jù)庫(kù)運(yùn)維 MySQL
傳統(tǒng)的架構(gòu)模式就是應(yīng)用連接數(shù)據(jù)庫(kù)直接對(duì)數(shù)據(jù)進(jìn)行訪問(wèn),這種架構(gòu)特點(diǎn)就是簡(jiǎn)單方便。但是隨著目前數(shù)據(jù)量不斷的增大我們就遇到了很多問(wèn)題,這個(gè)時(shí)候就需要用到數(shù)據(jù)庫(kù)中間件。

[[241751]]

 

什么需要數(shù)據(jù)庫(kù)中間件

傳統(tǒng)的架構(gòu)模式就是應(yīng)用連接數(shù)據(jù)庫(kù)直接對(duì)數(shù)據(jù)進(jìn)行訪問(wèn),這種架構(gòu)特點(diǎn)就是簡(jiǎn)單方便。

但是隨著目前數(shù)據(jù)量不斷的增大我們就遇到了問(wèn)題:

  1. 單個(gè)表數(shù)據(jù)量太大
  2. 單個(gè)庫(kù)數(shù)據(jù)量太大
  3. 單臺(tái)數(shù)據(jù)量服務(wù)器壓力很大
  4. 讀寫(xiě)速度遇到瓶頸

當(dāng)面臨以上問(wèn)題時(shí),我們會(huì)想到的第一種解決方式就是 向上擴(kuò)展(scale up) 簡(jiǎn)單來(lái)說(shuō)就是不斷增加硬件性能。這種方式只能暫時(shí)解決問(wèn)題,當(dāng)業(yè)務(wù)量不斷增長(zhǎng)時(shí)還是解決不了問(wèn)題。特別是淘寶,facebook,youtube這種業(yè)務(wù)成線性,甚至指數(shù)級(jí)上升的情況。

此時(shí)我們不得不依賴于第二種方式: 水平擴(kuò)展 ,除了增加應(yīng)用服務(wù)器外,還會(huì)涉及到數(shù)據(jù)庫(kù)的垂直以及分庫(kù)分表,數(shù)據(jù)庫(kù)讀寫(xiě)分離等,這個(gè)時(shí)候就需要用到數(shù)據(jù)庫(kù)中間件。

數(shù)據(jù)庫(kù)中間件的功能

1.通用的數(shù)據(jù)庫(kù)中間件會(huì)支持多種數(shù)據(jù)庫(kù)的協(xié)議。

連接數(shù)據(jù)庫(kù)中間件用的是標(biāo)準(zhǔn)的數(shù)據(jù)庫(kù)協(xié)議如jdbc,而數(shù)據(jù)庫(kù)中間件在與各種數(shù)據(jù)庫(kù)通訊時(shí)用的是各數(shù)據(jù)庫(kù)的協(xié)議。這樣在應(yīng)用程序中就可以透明化的使用數(shù)據(jù)庫(kù),減少開(kāi)發(fā)成本,與適配數(shù)據(jù)庫(kù)所帶來(lái)開(kāi)發(fā)成本,如圖:

阿里P8架構(gòu)師談:數(shù)據(jù)庫(kù)中間件的功能、適用場(chǎng)景、淘寶TDDL詳解

 

2.讀寫(xiě)分離:讀、寫(xiě)分離的原理是將事務(wù)型操作(增、刪、改)與非事務(wù)弄操作(讀)分發(fā)到不同數(shù)據(jù)庫(kù)實(shí)例上去執(zhí)行。數(shù)據(jù)庫(kù)實(shí)例之間要進(jìn)行數(shù)據(jù)的主、從同步,往往寫(xiě)數(shù)據(jù)庫(kù)實(shí)例為主數(shù)據(jù)庫(kù);讀數(shù)據(jù)庫(kù)實(shí)例為從數(shù)據(jù)庫(kù)。如下圖所示:

阿里P8架構(gòu)師談:數(shù)據(jù)庫(kù)中間件的功能、適用場(chǎng)景、淘寶TDDL詳解

 

上面的圖可以看出,黃線代表寫(xiě)請(qǐng)求,綠線代表讀請(qǐng)求,藍(lán)色數(shù)據(jù)同步,這就是一個(gè)簡(jiǎn)單的讀寫(xiě)分離。

3. 分庫(kù)分表:分庫(kù)、分表是為了將不同的業(yè)務(wù)數(shù)據(jù)存儲(chǔ)于不同數(shù)據(jù)庫(kù)實(shí)例上,從而達(dá)到減少數(shù)據(jù)庫(kù)實(shí)例表的基礎(chǔ)數(shù)據(jù)量和業(yè)務(wù)的分布式處理。

阿里P8架構(gòu)師談:數(shù)據(jù)庫(kù)中間件的功能、適用場(chǎng)景、淘寶TDDL詳解

 

上面這幅圖就可以看出數(shù)據(jù)庫(kù)中間件作用,比如下面的這個(gè)SQL:

 

  1. select from table_name where id = 1 

按照中間件分庫(kù)分表算法,此SQL將發(fā)送到DB1節(jié)點(diǎn),由DB1這個(gè)MySQL負(fù)責(zé)解析和獲取id=1的數(shù)據(jù),并通過(guò)中間件返回給客戶端。

MySQL主流中間件:Atlas,cobar,TDDL等

目前市面上中間件種類很多種 :

阿里P8架構(gòu)師談:數(shù)據(jù)庫(kù)中間件的功能、適用場(chǎng)景、淘寶TDDL詳解

 

Cobar:

阿里巴巴B2B開(kāi)發(fā)的關(guān)系型分布式系統(tǒng),管理將近3000個(gè)MySQL實(shí)例。 在阿里經(jīng)受住了考驗(yàn),后面由于作者的走開(kāi)的原因cobar沒(méi)有人維護(hù) 了,阿里也開(kāi)發(fā)了tddl替代cobar。

MyCAT:

社區(qū)愛(ài)好者在阿里cobar基礎(chǔ)上進(jìn)行二次開(kāi)發(fā),解決了cobar當(dāng)時(shí)存 在的一些問(wèn)題,并且加入了許多新的功能在其中。目前MyCAT社區(qū)活 躍度很高,目前已經(jīng)有一些公司在使用MyCAT。總體來(lái)說(shuō)支持度比 較高,也會(huì)一直維護(hù)下去,

Atlas:

360團(tuán)隊(duì)基于mysql proxy 把lua用C改寫(xiě)。原有版本是支持分表, 目前已經(jīng)放出了分庫(kù)分表版本。在網(wǎng)上看到一些朋友經(jīng)常說(shuō)在高并 發(fā)下會(huì)經(jīng)常掛掉,如果大家要使用需要提前做好測(cè)試。

淘寶TDDL

淘寶根據(jù)自己的業(yè)務(wù)特點(diǎn)開(kāi)發(fā)了TDDL(Taobao Distributed Data Layer 框架,主要解決了分庫(kù)分表對(duì)應(yīng)用的透明化以及異構(gòu)數(shù)據(jù)庫(kù)之間的數(shù)據(jù)復(fù)制,它是一個(gè)基于集中式配置的 jdbc datasource實(shí)現(xiàn),具有主備,讀寫(xiě)分離,動(dòng)態(tài)數(shù)據(jù)庫(kù)配置等功能。

TDDL所處的位置(tddl通用數(shù)據(jù)訪問(wèn)層,部署在客戶端的jar包,用于將用戶的SQL路由到指定的數(shù)據(jù)庫(kù)中):

阿里P8架構(gòu)師談:數(shù)據(jù)庫(kù)中間件的功能、適用場(chǎng)景、淘寶TDDL詳解

 

淘寶很早就對(duì)數(shù)據(jù)進(jìn)行過(guò)分庫(kù)的處理, 上層系統(tǒng)連接多個(gè)數(shù)據(jù)庫(kù),中間有一個(gè)叫做DBRoute的路由來(lái)對(duì)數(shù)據(jù)進(jìn)行統(tǒng)一訪問(wèn)。DBRoute對(duì)數(shù)據(jù)進(jìn)行多庫(kù)的操作、數(shù)據(jù)的整合,讓上層系統(tǒng)像操作一個(gè)數(shù)據(jù)庫(kù)一樣操作多個(gè)庫(kù)。

下圖展示了一個(gè)簡(jiǎn)單的分庫(kù)分表數(shù)據(jù)查詢策略:

阿里P8架構(gòu)師談:數(shù)據(jù)庫(kù)中間件的功能、適用場(chǎng)景、淘寶TDDL詳解

 

主要優(yōu)點(diǎn):

1.數(shù)據(jù)庫(kù)主備和動(dòng)態(tài)切換

2.帶權(quán)重的讀寫(xiě)分離

3.單線程讀重試

4.集中式數(shù)據(jù)源信息管理和動(dòng)態(tài)變更

5.剝離的穩(wěn)定jboss數(shù)據(jù)源

6.支持mysql和oracle數(shù)據(jù)庫(kù)

7.基于jdbc規(guī)范,很容易擴(kuò)展支持實(shí)現(xiàn)jdbc規(guī)范的數(shù)據(jù)源

8.無(wú)server,client-jar形式存在,應(yīng)用直連數(shù)據(jù)庫(kù)

9.讀寫(xiě)次數(shù),并發(fā)度流程控制,動(dòng)態(tài)變更

10.可分析的日志打印,日志流控,動(dòng)態(tài)變更 

責(zé)任編輯:龐桂玉 來(lái)源: 今日頭條
相關(guān)推薦

2018-08-28 16:22:57

數(shù)據(jù)庫(kù)NoSQLSQL

2018-08-07 10:04:11

數(shù)據(jù)庫(kù)分布式緩存Redis

2017-11-27 05:36:16

數(shù)據(jù)庫(kù)中間件TDDL

2020-10-26 11:41:47

kill代碼

2018-09-12 20:12:11

MySQL慢查詢優(yōu)化索引優(yōu)化

2019-02-26 12:40:10

程序員架構(gòu)師阿里

2017-05-23 18:55:05

mysql-proxy數(shù)據(jù)庫(kù)架構(gòu)

2015-08-11 11:16:36

淘寶中間件

2017-11-27 05:06:42

數(shù)據(jù)庫(kù)中間件cobar

2017-12-01 05:04:32

數(shù)據(jù)庫(kù)中間件Atlas

2019-11-12 08:40:03

RocketMQ架構(gòu)

2019-07-22 22:22:02

架構(gòu)運(yùn)維技術(shù)

2018-02-24 19:37:33

Java8數(shù)據(jù)庫(kù)中間件

2012-02-02 10:23:07

2020-01-14 14:37:29

JVMJava體系

2011-08-10 13:03:58

CJDBC數(shù)據(jù)庫(kù)集群

2020-07-20 14:00:26

架構(gòu)運(yùn)維技術(shù)

2021-04-19 08:25:03

架構(gòu)師公司系統(tǒng)

2024-12-06 08:29:29

2017-12-11 13:30:49

Go語(yǔ)言數(shù)據(jù)庫(kù)中間件
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: av电影一区 | 伊人一二三 | 精品综合久久久 | 亚洲人成人一区二区在线观看 | 欧美国产精品一区二区三区 | 欧美视频 | av在线免费观看网址 | 91精品国产91久久综合桃花 | 色www精品视频在线观看 | 国产传媒毛片精品视频第一次 | 成人中文字幕在线 | 视频在线h | 国产欧美日韩综合精品一区二区 | 婷婷色国产偷v国产偷v小说 | 中国美女一级黄色片 | 精品国产乱码久久久久久闺蜜 | 亚洲综合在线一区二区 | 国产成人福利在线观看 | 在线观看视频h | 天天夜碰日日摸日日澡 | 日本一道本视频 | 欧美一级视频在线观看 | 一区二区三区四区不卡视频 | av小说在线| 欧美成人黄色小说 | 婷婷激情五月网 | 欧美日韩精品在线一区 | av在线天堂| 国产精品自产拍在线观看蜜 | 欧美色成人 | 影音先锋成人资源 | 亚洲精品视 | 精品免费视频一区二区 | 极品粉嫩国产48尤物在线播放 | 欧美性大战久久久久久久蜜臀 | 成人av网站在线观看 | 激情网站在线 | 久久99精品国产99久久6男男 | 午夜一区| 欧美三区视频 | 久久久久久亚洲精品 |