您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關.NET Core中怎么利用SQL Server數據庫實現讀寫分離,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
首先明白什么是讀寫分離,讀寫分離基本原理就是將數據庫的讀寫操作分配到不同的節點上,如下圖:
.NET Core基于SQL Server數據庫實現讀寫分離實戰演練
讀寫分離就是主從集群,一主多從或者一主一叢都是可以的,就是數據庫主機復制寫入操作,從機負責讀的操作,主機寫入以后再同步給從機;最大作用就是分庫減少單臺數據庫的壓力。最大的業務使用場景是數據報表查詢統計功能。
1)、SQL Server提供了三種技術實現讀寫分離
.NET Core基于SQL Server數據庫實現讀寫分離實戰演練
SQL Server提供了三種技術,可以用于讀寫分離的實現:日志傳送、事務復制和SQL Server 2012以上版本中新增的功能Always On技術。配置復制沒有數據庫鏡像和AlwaysOn的要求那么高,只需要兩臺服務器能通過TCP進行通訊即可,兩臺服務器操作系統和SQL版本都可以不完全一致,而且兩臺服務器也不需要加入域,所以配置復制訂閱就簡單多了,
綜上:考慮到簡單性和實用性,這里阿笨推薦采用事務復制技術來實現SQL SERVER讀寫分離。
2)、同臺服務器不同數據庫之間實現主從復制(僅僅作為開發環境、測試演示)
在上一節分享課程中《基于SQL Server數據庫搭建主從復制實現讀寫分離實戰演練》我們已經學會了如何在如何在不同的DB服務器上基于SQL Sever數據庫搭建主從同步實現讀寫分離。那么本次分享課程關于SQL SREVER主從同步環境的搭建由于我們為了演示就簡單起見,為了達到演示的目的,只講解在單臺DB服務器上的不同數據庫之間實現主從同步進行分享,廢話不多說直接進入本次課程的主題。
.NET Core基于SQL Server數據庫實現讀寫分離實戰演練
3)、不同服務器不同數據庫之間實現主從復制(實際生成環境推薦的做法)
由于篇幅較長,《基于SQL Server數據庫搭建主從復制實現讀寫分離實戰演練》中已經進行課程進行分享
.NET Core基于SQL Server數據庫實現讀寫分離實戰演練
4.1、在我們的應用程序開發中使用數據庫主從同步?
一個是主連接字符串,另外是一個或者多個從的字符配置,我們要實現讀寫分離就是去實現讀取的時候用從庫的連接字符串,寫入的時候用主庫的連接字符串,說到這里我想大家應該很明確自己的思路明確一點,那就是我們讀的時候用從庫,寫的時候用主庫。
1)、根據切換數據庫連接字符串R/W來實現手動的讀寫分離。缺點:不靈活,擴展低,不具備高可用,穩定性差,侵入式太強,只適合小項目臨時應急使用。
2)、第三方數據庫中間件比如阿里巴巴的MyCat、 360開發的atlas 等等。缺點:重量級,入門門檻難度大,學習成本高。
3)、.NET Core開源數據庫訪問組件。優點:靈活,真真實現讀寫分離。
.NET Core支持數據庫讀寫分離的組件比較多,比如:FreeSql ,SmartSql,SqlSugar(在《.NET Core基于SQL Server數據庫實現讀寫分離實戰演練》中已經分享)等等。
1、為什么選擇SqlSugar?
SqlSugar:高性能、高生產力,超輕量級的DotNet Core ORM。
亮點:多讀庫 權重篩選 √ (配置多讀庫,根據讀庫權重選舉讀庫)Install-Package sqlSugar Install-Package sqlSugarCore
Install-Package sqlSugar
Install-Package sqlSugarCore
上述就是小編為大家分享的.NET Core中怎么利用SQL Server數據庫實現讀寫分離了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。