Moebius for SQLServer負載均衡
搞數據庫的都知道:在Oracle上有RAC集群,MySQL也有對應的方案,而SQL Server上直到SQL Server 2012版本的AlwaysOn到來,微軟都沒有提供一個負載均衡方案,在網上看到Moebius可以實現負載均衡,在此將相關實現過程分享給大家:

一、架構原理
負載均衡集群是由一組相互獨立的計算機系統構成,通過常規網絡或專用網絡進行連接,由路由器銜接在一起,各節點相互協作、共同負載、均衡壓力,對客戶端來說,整個群集可以視為一臺具有超高性能的獨立服務器。
1、實現原理
實現數據庫的負載均衡技術,首先要有一個可以控制連接數據庫的控制端。在這里,它截斷了數據庫和程序的直接連接,由所有的程序來訪問這個中間層,然后再由中間層來訪問數據庫。這樣,我們就可以具體控制訪問某個數據庫了,然后還可以根據數據庫的當前負載采取有效的均衡策略,來調整每次連接到哪個數據庫。
2、實現多據庫數據同步
對于負載均衡,最重要的就是所有服務器的數據都是實時同步的。這是一個集群所必需的,因為,如果數不據實時、不同步,那么用戶從一臺服務器讀出的數據,就有別于從另一臺服務器讀出的數據,這是不能允許的。所以必須實現數據庫的數據同步。這樣,在查詢的時候就可以有多個資源,實現均衡。比較常用的方法是Moebius for SQL Server集群,Moebius for SQL Server集群采用將核心程序駐留在每個機器的數據庫中的辦法,這個核心程序稱為Moebius for SQL Server 中間件,主要作用是監測數據庫內數據的變化并將變化的數據同步到其他數據庫中。數據同步完成后客戶端才會得到響應,同步過程是并發完成的,所以同步到多個數據庫和同步到一個數據庫的時間基本相等;另外同步的過程是在事務的環境下完成的,保證了多份數據在任何時刻數據的一致性。正因為Moebius 中間件宿主在數據庫中的創新,讓中間件不但能知道數據的變化,而且知道引起數據變化的SQL語句,根據SQL語句的類型智能的采取不同的數據同步的策略以保證數據同步成本的最小化。
3、優缺點
優點:
(1) 擴展性強:當系統要更高數據庫處理速度時,只要簡單地增加數據庫服務器就 可以得到擴展。
(2) 可維護性:當某節點發生故障時,系統會自動檢測故障并轉移故障節點的應用,保證數據庫的持續工作。
(3) 安全性:因為數據會同步的多臺服務器上,可以實現數據集的冗余,通過多份數據來保證安全性。
另外它成功地將數據庫放到了內網之中,更好地保護了數據庫的安全性。
(4) 易用性:對應用來說完全透明,集群暴露出來的就是一個IP
缺點:
(1) 不能夠按照Web服務器的處理能力分配負載。
(2) 負載均衡器(控制端)故障,會導致整個數據庫系統癱瘓。
二、安裝與配置
Moebius的安裝非常簡便,在裝有SQL Server引擎的服務器上直接點擊安裝包進行安裝,安裝過程中一直下一步即可(如下圖)。
配置環境如下圖所示:
三、測試結果
通過對Moebius的簡單測試來看,Moebius的確實現了對SQL Server的負載均衡、高可用以及保證數據的安全。對于國內能夠有公司實現類似Oracle RAC這樣的負載均衡方案還是非常優秀的,由于環境有限,未能在復雜的環境下進行測試,如果能夠在大數據的環境以及多機的集群環境下還能夠穩定運行,那應該算是不錯的解決方案了。
附上Moebius詳細文檔連接,有需要的可以參考:
http://wenku.baidu.com/view/383b2f83b9d528ea81c7797d.html?re=view
數據庫 負載均衡緩存
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。