1.通常中小型的web應用,好比日pv(訪問量)小於1000萬,用Nginx做負載均衡就能夠了。前端
2.大型網站或重要的服務,且服務器比較多時,能夠考慮用lvs。web
3.目前比較流行的方案,web前端用Nginx/HAProxy+keepalived做負載均衡,後端用MySQL數據庫一主多從和讀寫分離,採用lvs+keepalived架構。數據庫
就階段而言,後端
第一階段,單點的負載均衡Nginx/HAProxy,此時服務器剛脫離單服務器、單數據庫模式,須要必定的負載均衡,但規模較小。服務器
第二階段,網絡服務擴大,Nginx不能知足的狀況,將Nginx做爲LVS的節點來用,或者購買商業的負載均衡設備。網絡
第三階段,處於成本及自身產品的量身定製,LVS成爲主流。架構
第四階段,理想架構,Array/LVS+Nginx/HAProxy+Squid/Varnish+AppServer.負載均衡
1.heartbeat經過心跳進行通訊和選舉,keepalived經過VRRP協議進行通訊和選舉。ide
2.heartbeat有三個配置文件,keepalived只有一個配置文件。keepalived使用起來更簡單,heartbeat配套工具更多,功能更強大。工具
3.heartbeat的腳本有限制約束,必需要支持 start/stop/restart,keepalived腳本沒有約束。
4.heartbeat的目的是用戶service的雙機,keepalived的目的是模擬路由器的雙機,建議業務用heartbeat,LVS用keepalived。