Http負載均衡 Nginx Nginx不僅是一個小巧且高效的HTTP伺服器,也可以做一個高效的負載均衡反向代理,通過它接受用戶的請求並分發到多個Mongrel進程可以極大提高Rails應用的併發能力 Tcp負載均衡 LVS LVS(LinuxVirtual Server)是由章文嵩博士主導開發的一 ...
Http負載均衡
Nginx
Nginx不僅是一個小巧且高效的HTTP伺服器,也可以做一個高效的負載均衡反向代理,通過它接受用戶的請求並分發到多個Mongrel進程可以極大提高Rails應用的併發能力
Tcp負載均衡
LVS
LVS(LinuxVirtual Server)是由章文嵩博士主導開發的一款開源軟體,可以實現Linux平臺下的基於網路層的負載均衡軟體
Keepalived
Keepalived的作用是檢測伺服器的狀態,如果有一臺web伺服器死機,或工作出現故障,Keepalived將檢測到,並將有故障的伺服器從系統中剔除,當伺服器工作正常後Keepalived自動將伺服器加入到伺服器群中,這些工作全部自動完成,不需要人工干涉,需要人工做的只是修複故障的伺服器
HAProxy
HAProxy提供高可用性、負載均衡以及基於TCP和HTTP應用的代理,支持虛擬主機,它是免費、快速並且可靠的一種解決方案。HAProxy特別適用於那些負載特大的web站點,這些站點通常又需要會話保持或七層處理。HAProxy運行在當前的硬體上,完全可以支持數以萬計的併發連接。並且它的運行模式使得它可以很簡單安全的整合進您當前的架構中, 同時可以保護你的web伺服器不被暴露到網路上
VIPServer
VIPServer是阿裡中間件團隊開發的一個中間層負載均衡(mid-tier load balancing)產品,VIPServer是基於P2P模式,是一個七層負載均衡產品。VIPServer提供動態功能變數名稱解析和負載均衡服務,支持很多諸如多業務單元同單元優先、同機房優先、同區域優先等一系列流量智能調度和容災策略,支持多種健康監測協議,支持精細的權重控制,提供多級容災體系、具有對稱調用、健康閾值保護等保護功能的解決方案。是阿裡負載均衡體系、功能變數名稱服務體系的一個非常重要的組成部分
資料庫集群
MyCAT
MyCAT是一個開源的分散式資料庫系統,是一個實現了MySQL協議的伺服器,前端用戶可以把它看作是一個資料庫代理,用MySQL客戶端工具和命令行訪問,而其後端可以用MySQL原生協議與多個MySQL伺服器通信,也可以用JDBC協議與大多數主流資料庫伺服器通信,其核心功能是分表分庫,即將一個大表水平分割為N個小表,存儲在後端MySQL伺服器里或者其他資料庫里。MyCat發展到目前的版本,已經不是一個單純的MySQL代理了,它的後端可以支持MySQL、SQL Server、Oracle、DB2、PostgreSQL等主流資料庫,也支持MongoDB這種新型NoSQL方式的存儲,未來還會支持更多類型的存儲。而在最終用戶看來,無論是那種存儲方式,在MyCat里,都是一個傳統的資料庫表,支持標準的SQL語句進行數據的操作,這樣一來,對前端業務系統來說,可以大幅降低開發難度,提升開發速度
Atlas
Atlas是由 Qihoo 360, Web平臺部基礎架構團隊開發維護的一個基於MySQL協議的數據中間層項目。它在MySQL官方推出的MySQL-Proxy 0.8.2版本的基礎上,修改了大量bug,添加了很多功能特性。目前該項目在360公司內部得到了廣泛應用,很多MySQL業務已經接入了Atlas平臺,每天承載的讀寫請求數達幾十億條
MHA
MHA(Master High Availability)目前在MySQL高可用方面是一個相對成熟的解決方案,它由日本DeNA公司youshimaton(現就職於Facebook公司)開發,是一套優秀的作為MySQL高可用性環境下故障切換和主從提升的高可用軟體。在MySQL故障切換過程中,MHA能做到在0~30秒之內自動完成資料庫的故障切換操作,並且在進行故障切換的過程中,MHA能在最大程度上保證數據的一致性,以達到真正意義上的高可用
Codis
Codis 是一個分散式 Redis 解決方案, 對於上層的應用來說, 連接到 Codis Proxy 和連接原生的 Redis Server 沒有明顯的區別 (不支持的命令列表), 上層應用可以像使用單機的 Redis 一樣使用, Codis 底層會處理請求的轉發, 不停機的數據遷移等工作, 所有後邊的一切事情, 對於前面的客戶端來說是透明的, 可以簡單的認為後邊連接的是一個記憶體無限大的 Redis 服務
---------------------------------------------------
推薦閱讀: