sql azure伺服器端架構
sql azure
的訂閱模型決定了各個訂閱之間的資料是隔離的。實際上,
sql azure
平台將使用者的資料儲存在多個
sql azure
物理伺服器上,並且使用
sql server
的複製功能(
replicas
)實現了高可用性的要求。
如圖6-2
所示,在
sql azure
平台,當使用者建立了乙個資料庫之後,
sql azure
通過複製功能建立三個資料庫副本。這三個副本中有乙個作為主資料庫,所有的資料請求都會首先應用在這個主資料庫上,並且同步到另外兩個副本資料庫中。
主資料庫發生故障的時候,
sqlazure
會從另外兩個副本中選擇乙個出來作為主資料庫,同時再建立乙個新的副本以保證任何時候都有三個副本同時存在,如圖
6-3
所示。通過基於三個副本的複製功能,
sql azure
保證了99.9%
的高可用性。
sql azure
在伺服器端的架構如圖
6-4
所示。首先從
internet
上傳送過來的資料庫請求會通過乙個基於
tds(
tabular data stream
)協議的負載均衡伺服器處理。這個負載均衡使用黏滯性演算法保證同乙個鏈結的所有請求會被路由到同一臺物理伺服器。同時由於其基於
tds
協議,保證了只要客戶端也使用了
tds
協議,那麼這些請求都是可被接受的,比如
ado.net
、odbc
等,從而保證了
sql azure
對於開發人員的使用一致性。
資料庫訪問請求通過負載均衡伺服器**到
gateway
伺服器上。
gateway
伺服器在這裡充當乙個**和**的角色。首先它完成對請求的認證和授權操作,保證只有合法的請求才能進入下一級操作。同時它還對請求進行防火牆驗證,保證請求者的
ip 必須是
sql azure
防火牆中設定允許訪問的。最後,
gateway
還有乙個內部的訪問計數器用來防止
dos(
denial of service
)攻擊。如圖
6-4
所示,gateway
部分由多台伺服器組成,在進行操作之後,它會基於連線字串將
tds請求**給對應的
sql azure
物理伺服器,也就是使用者資料庫真正儲存的伺服器中。
而對於為數眾多的資料庫伺服器,
sql azure
提供了底層控制模組負責建立、遷移、配置、故障恢復和負載均衡等功能。
本文節選自《實戰
windows azure
:微軟雲計算平台技術詳解
》一書圖書詳細資訊
:
伺服器端架構
摘自於某位大神ppt 一 技術架構的演變及使用場景 tip 中數字是指併發量 二 架構優化之路 三 現主要針對負載均衡問題進行討論 負載均衡問題 使用者的請求由誰來 到具體的應用伺服器 有什麼 的演算法 應用伺服器如何返回使用者的請求 使用者如果每次訪問到的伺服器不一樣,那麼如何維護sesion的一...
socket伺服器端
伺服器 include winsock2.h include string.h include stdio.h include time.h include stdarg.h include stdlib.h pragma comment lib,ws2 32 void errexit const ...
kerberos伺服器端
1.安裝tcl wget tar zvxf tcl8.5.12 src.tar.gz cd tcl8.5.12 cd unix configure make make install 3.解壓 tar xvf krb5 1.10.3 signed.tar tar zvxf krb5 1.10.3.t...