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

分解單體式數據庫以實現微服務

運維 數據庫運維
讓我們看一下微服務遷移如何影響數據庫管理,并探討分解數據庫的步驟。

在從單體式架構遷移到微服務架構時,數據庫通常是事后想法。有些人認為遷移僅涉及應用邏輯的重組,而底層數據保持不變。但是,這種做法可能會導致單體式服務和微服務的尷尬混合:分布式單體服務。

[[345439]]

微服務模型使基礎架構和數據存儲發生深刻變化。在微服務模型中,從傳統應用程序中拉出服務,并為其提供獨立性,在這種情況下,團隊也必須考慮其基礎數據庫,并將其分解為特定于服務的數據源。

讓我們看一下微服務遷移如何影響數據庫管理,并探討分解數據庫的步驟。

按服務模式的數據庫

在微服務架構中,大型數據湖需要轉型為分布式數據庫,以匹配特定服務。這樣做可在只需要訪問原始數據庫特定部分的各個服務間創建必要的關注點分離。這也可幫助管理自己服務集的團隊維持所需的獨立控制。

根據Praful Todkar建議的模型,分解單體數據庫需要與其所支持的服務同時進行-有時稱為按服務模式的數據庫。這應該是逐步的過程,并要求團隊:

  • 從單體中分離出單個服務,并將流量路由到它;
  • 分離相同數據庫中的表,并將其與該服務匹配;
  • 在該表旁邊創建新的較小的數據庫,并將流量路由到它;
  • 從原始數據庫中刪除先前的數據和架構。

分離服務和表

在微服務遷移期間,重組整個數據庫有點像在駕駛汽車的同時更換輪胎。這樣做可能會導致各種故障,并增加丟失數據或破壞功能的機會。

正確的做法是,從小處著手,在舊架構與新微服務間進行邏輯分離。當你選擇要從單體中移除的服務后,創建一個新數據表(或多個表),其中僅包含新服務所需的數據。

在此步驟中,明確的路由規則至關重要。首先團隊需要將流量從單體應用程序重新路由到新的微服務。然后,他們必須將舊的單體數據庫的部分轉移到表中,這最終將構成新數據庫的框架。所有這些都需要現代的聯網功能,例如由Istio等工具實現的服務網格方法。

當將分離的表轉換為新的分布式數據庫時,奇偶校驗也至關重要。請確保新舊數據庫中的數據已完全同步。在確認數據奇偶校驗后,從以前的數據庫中刪除表和舊數據。

使用模式是便于管理,但不能過于依靠

模式是元數據集,用來描述數據庫內數據的結構。有些團隊更喜歡按模式整理數據,為每個服務創建獨有的數據庫模式,而不是整個數據庫。這種方法有著無可爭議的好處,因為要管理的數據庫更少,并且它們之間的統一性更高。

但是,這種做法非常接近單體式數據湖模型,而我們正試圖遠離這種模型。如果有選擇的話,即使看起來客觀上適得其反,開發人員和架構師也會傾向于熟悉的方法。他們會做出妥協并遵循按服務模式做法。但是請記住:只要有可能,最好為每個服務都設置專用數據庫,而不要依賴總體架構。

微服務最好的部分是,它使你可以將專用數據庫分配給某些服務,而將共享數據庫用于其他服務。該決定通常取決于服務的重要性及其處理的數據類型。團隊結構也在這里發揮作用。有些服務要求管理它們的團隊具有嚴格的自治權,而其他服務最好在多個團隊之間共享。

為微服務選擇最佳數據庫 通常,單體是構建大型關系數據庫上。當遷移到微服務時,為新架構選擇數據庫是重大決定。

現在有很多數據庫選項,包括:

  • 鍵值數據庫
  • 文檔存儲數據庫
  • 圖形數據庫
  • 基于列的數據庫

每種類型的數據庫模型都適合特定類型的數據管理需求。例如,鍵值數據庫和列式數據庫最適合結構化數據,圖形適合半結構化數據,而文檔存儲則最適合非結構化數據。

請記住,每種數據庫類型的讀寫速度都不同,圍繞不同數據庫的供應商工具也不同。在選擇任何一種數據庫類型或工具集前,請使用樣本數據運行測試。例如,對于需要實時性能的服務,將需要具有強大內存性能的數據庫。

盡管企業正在遷移到微服務,但是關系數據庫不會很快消失。出于各種原因,很多應用程序的某些部件在傳統架構中運行時性能最佳,并且將依賴于舊的單體數據庫來運行。好消息是微服務支持這種數據庫管理的多類型模型。因此,不要僅僅因為其他服務正在遷移到微服務,而試圖將應用程序的每個部分從單體中移出。

 

責任編輯:趙寧寧 來源: TechTarget中國
相關推薦

2019-09-25 08:57:24

單體式架構微服務

2018-11-28 09:38:34

微服務架構API

2019-10-21 16:54:48

數據庫設計SQL

2022-12-21 16:13:31

微服務架構

2022-03-29 08:30:15

微服務架構單體架構

2017-11-20 13:32:54

微服務數據庫開發

2024-01-26 06:06:26

單體微服務容器化

2020-12-30 13:28:18

單體式分布式金山云

2022-04-11 17:33:29

微服務架構單體

2022-07-20 11:08:12

微服務數據庫架構

2021-10-21 09:10:34

微服務架構數據

2023-10-12 00:07:27

Service單體微服務

2024-01-19 11:57:42

2020-05-11 14:35:11

微服務架構代碼

2010-04-28 13:40:38

2022-08-07 22:07:35

微服務架構

2022-08-05 07:37:39

單體架構遷移微服務

2023-11-01 11:17:26

單體架構微服務架構

2024-11-19 08:10:00

2021-01-22 17:46:37

微服務開源Web
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品久久久久久久免费大片 | 国产91在线精品 | 日韩av在线不卡 | 日韩在线中文 | 福利片在线 | 亚洲二区视频 | 99久久久99久久国产片鸭王 | 国产一区二区精品在线 | 久久国产精品一区二区三区 | 国产精品一二三区 | 九九精品在线 | 国产一区2区 | 在线观看国产精品一区二区 | 精品欧美乱码久久久久久1区2区 | 九九热在线免费观看 | 中文字幕视频在线免费 | 人人叉| 亚洲一区二区三区在线 | 精品视频999 | xxx国产精品视频 | 欧美 日韩 国产 成人 | 国产精品国产三级国产aⅴ原创 | 国产精品毛片一区二区在线看 | 久久99精品久久久水蜜桃 | 国产成人免费视频网站高清观看视频 | 久久精品久久久 | 日韩精品免费 | 久久首页 | 99精品视频一区二区三区 | 精产国产伦理一二三区 | 高清视频一区二区三区 | 超碰在线人人 | 日韩伦理一区二区 | 欧美日韩一区不卡 | 欧美日韩亚洲在线 | h在线免费观看 | 精品国产一区二区三区久久久蜜月 | 亚洲国产精选 | www.一级毛片 | 国产精品日韩一区二区 | 日本一二三区在线观看 |