6大主流數(shù)據(jù)庫中間件詳解(非常全面)
當(dāng)前位置:點(diǎn)晴教程→知識(shí)管理交流
→『 技術(shù)文檔交流 』
Java面試經(jīng)常問到數(shù)據(jù)庫中間件,比如:數(shù)據(jù)庫中間件有哪些?下面我就重點(diǎn)來詳解6大數(shù)據(jù)庫中間件。 數(shù)據(jù)庫中間件定義數(shù)據(jù)庫中間件作為應(yīng)用程序和數(shù)據(jù)庫之間的代理,充當(dāng)一個(gè)緩沖層,使得應(yīng)用程序可以通過中間件來訪問數(shù)據(jù)庫,而不必直接與數(shù)據(jù)庫通信。 為什么需要數(shù)據(jù)庫中間件傳統(tǒng)的架構(gòu)模式就是 應(yīng)用連接數(shù)據(jù)庫直接對(duì)數(shù)據(jù)進(jìn)行訪問,這種架構(gòu)特點(diǎn)就是簡單方便。 但是隨著目前數(shù)據(jù)量不斷的增大我們就遇到了問題:
當(dāng)面臨以上問題時(shí),我們會(huì)想到不斷增加硬件性能,這種方式只能暫時(shí)解決問題,當(dāng)業(yè)務(wù)量不斷增長時(shí)還是解決不了問題。 特別是淘寶,facebook,youtube這種業(yè)務(wù)成線性,甚至指數(shù)級(jí)上升的情況。 此時(shí)除了增加應(yīng)用服務(wù)器外,還會(huì)涉及到數(shù)據(jù)庫的垂直以及分庫分表,數(shù)據(jù)庫讀寫分離等,這個(gè)時(shí)候就需要用到數(shù)據(jù)庫中間件。 數(shù)據(jù)庫中間件作用數(shù)據(jù)庫中間件可以簡化對(duì)讀寫分離以及分庫分表的操作,并隱藏底層實(shí)現(xiàn)細(xì)節(jié),可以像操作單庫單表那樣操作多庫多表。 數(shù)據(jù)庫中間件分類常見的數(shù)據(jù)庫中間件如下,主要包含如下6類數(shù)據(jù)庫中間件: 1.MyCatMycat是開源社區(qū)在阿里cobar基礎(chǔ)上進(jìn)行二次開發(fā),解決了cobar存在的問題,并且加入了許多新的功能在其中。 MyCat是基于MySQL協(xié)議開發(fā)的,可以將多個(gè)MySQL數(shù)據(jù)庫服務(wù)器組合成一個(gè)邏輯數(shù)據(jù)庫,從而實(shí)現(xiàn)數(shù)據(jù)分片、負(fù)載均衡、讀寫分離、故障切換等功能。 以下是MyCat的一些主要特點(diǎn):
2.MySQL-ProxyMySQL-Proxy是一種開源的MySQL代理服務(wù)器,可以用于在客戶端和MySQL服務(wù)器之間進(jìn)行攔截和操作。 實(shí)現(xiàn)如下功能:
3.DRDS阿里DRDS是一種云原生的關(guān)系型數(shù)據(jù)庫中間件,由阿里巴巴集團(tuán)開發(fā)和維護(hù)。 DRDS是阿里巴巴致力于解決單機(jī)數(shù)據(jù)庫服務(wù)瓶頸問題,而自主研發(fā)推出的分布式數(shù)據(jù)庫產(chǎn)品。 DRDS的前身是淘寶根據(jù)自己的業(yè)務(wù)特點(diǎn)開發(fā)了TDDL,全稱是Taobao Distributed Data Layer 框架,主要解決了分庫分表對(duì)應(yīng)用的透明化以及異構(gòu)數(shù)據(jù)庫之間的數(shù)據(jù)復(fù)制。 以下是DRDS的一些主要特點(diǎn):
4.AtlasAtlas是360團(tuán)隊(duì)基于mysql proxy 把lua用C改寫的版本,是一個(gè)基于MySQL協(xié)議的數(shù)據(jù)中間層項(xiàng)目。 Atlas它能夠?qū)?shù)據(jù)庫進(jìn)行讀寫分離、分庫分表配置,配合MHA架構(gòu)進(jìn)行高可用環(huán)境搭建有較好的效果。 5.ZebraZebra 是美團(tuán)點(diǎn)評(píng)開發(fā)的數(shù)據(jù)庫訪問層中間件,它的設(shè)計(jì)目標(biāo)是提供高性能、高可用性和易于管理的關(guān)系型數(shù)據(jù)庫解決方案。 具有以下的功能點(diǎn):
6.ShardingSphereApache ShardingSphere 是一套開源的分布式數(shù)據(jù)庫中間件,它由 JDBC、Proxy 和 Sidecar這 3 款相互獨(dú)立,卻又能夠混合部署配合使用的產(chǎn)品組成。 分庫分表是所有ShardingSphere產(chǎn)品中最為經(jīng)典、成熟,也是使用最多的功能。 ShardingSphere它支持多種數(shù)據(jù)庫,包括MySQL、Oracle、DB2、PostgreSQL和SQLServer等。 以上就是數(shù)據(jù)庫中間件的詳解,希望對(duì)你掌握數(shù)據(jù)庫中間件有所幫助。 -end- 該文章在 2024/1/23 12:26:35 編輯過 |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |