cdn加速/網站高并發架構設計

jopen 11年前發布 | 23K 次閱讀 架構

部署圖

部署設計圖如下:

cdn加速/網站高并發架構設計

說明:

用戶通過互聯網訪問網站需要經過的節點如下:

一、要通過域名解析

在域名解析處有兩種方式,

1.、自建,自建需要在域名解析前架設防火墻。

2.、使用現有的域名解析提供商,需要設置成CNAME,其實就是另一個域名解析,進行跳轉。在剛開始的時候建議先用CNAME方式,部署不影響用戶現有方式,容易被用戶接受,而且不用暫時不用擔心第一級dns的問題。

總之,如果要建設idc加速,防止ddos攻擊之類的服務,域名解析服務一定要提供,不管是直接提供dns服務還是間接通過cname轉發。

里面的主要技術,是通過用戶請求的ip來得到離用戶最近的服務器的地址,并通過它來提供服務。如果要進行安全防護,比如sql注入檢查,js跨站腳本等可以在這一層進行處理。

二、提供虛擬機

虛擬機現在主流有兩種方式,一是虛擬主機,主要的軟件有開源的openvz,商用的Virtuozzo等,另一類是虛擬機如vmwarexenkvm等,這類提供虛擬操作系統,可以是異構的。他們兩個的對比主要是虛擬主機的利用率比較高,可以一臺主流pcserver可以虛擬幾十個到上百個虛擬主機,但只能是同一類操作系統。虛擬機的運行效率相對低很多,一般主流pcserver也就十幾個左右。他的有點是異構操作系統,備份管理比較方便。當然在建設的時候可以先用虛擬機,然后在虛擬機上建設虛擬主機。

如果要提供對外服務,ip地址是比不可少的,對于一個用戶來說,一個域名需要幾個點,就需要幾個ip

三、lvs集群

由于要提供加速等服務,用戶直接使用的openvz虛擬主機的性能和效率一般不大,又要提供高可用性,所以需要通過虛擬主機訪問lvs集群的數據,通過lvs集群來提供服務。

四、Squid

Squid是緩存,尤其是對靜態頁面和文件有很好加速效果。現在sinasohu等都用它來做緩存加速。

五、Nginx

Nginx主要提供反向代理功能,當通過修改或者更新了頁面,由nginx來負責更新緩存。還有就是動態網站,也是由nginx來提供服務。

Nginxsqid都可以提供靜態緩存功能,兩者還要結合起來發揮最大效果。如果要進行安全防護,比如sql注入檢查,js跨站腳本等可以在這一層進行處理。

ddos

ddos的主要內容由兩個方面:

一、帶寬這個是恨重要的地方,據我現在從網上得到的資料,現在主流的idc機房一般最大提供獨立百兆端口,而且價格不菲。在這種情況下可以機柜租用。這個還需要調研是否可以提供更大的帶寬。

二、防火墻設備

需要在接入口部署防火墻,需要根據idc接口端口來確定容量,有的idc機房也提供此服務。

三、流量牽引設備

這個一般idc機房會提供此服務,這個根據需要是否需要購買。

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!