我有 一個 網站 流量很 大 所以架設了 兩臺 www.XXXX.COM.TW IP 11.11.11.11 的server
及 另外一臺 www.XXXX.COM.TW IP 22.22.22.22 的server
可是每次 連上網站時 大部份 都進入 IP 11.11.11.11 的server 上 只有少部份 會進到www.XXXX.COM.TW IP 22.22.22.22 請問在 dns 設定上 有什麼方式 可以讓 USER 平均分擔到不同的 server 上.
dns server上設定兩筆記錄, 我不知你是哪種dns, 就以bind為例
www 10 IN A 11.11.11.11 ;www 做 load balancing
www 10 IN A 22.22.22.22 ;www 做 load balancing
他自己會以Round-Robin方式輪連.
我也建議改用頻寬負載設備來解決,我是用ASCENLink來解決的..
DNS無法做到真正的流量平衡,因為用戶端DNS伺服器有CACHE,一旦完成名稱解析便會快取起來,如此該用戶端的電腦幾乎就連到同一台主機,很難做到真正的分流..
如果改用LB設備,他對外可以說是連結到同一IP由它來判斷要導向哪台主機,Windows內建的NLB也可以解決問題不過要先解決 Session 的問題..
可以以下這一個不用花錢的方案
因為你想把流量導到不同的伺服器
微軟的server 本身就有提供相關的功能
網路負載平衡(NLB)
你只要在網路卡服務中勾選網路負載平衡即可
此方法你的對外的dns只需要有一個
進入後 NLB 會依你所設定每台伺服器的負比率來分配量
所以你可以在這個叢集中設定多台電腦
再依照各台電腦的效能來分配比率
如果server分屬兩地, 要做load balance, 就要兩地都用到有 global load balance 功能的設備來做了. 如果要自建的話,便宜的大概就用Foundry的,有錢的
可以考慮用 F5 的.
不過既然 server 都在國內,作 global load balance的意義不大.還不如把server
擺到同一個地方作 WAN inbound load balance, 比較經濟一些.