還好啦!只是把資料庫放到別台,架構並沒有變,還是Client/Server架構。
單機型(2-Tiers, 1-Layer):Web(Client)與DB(Server)在同一台機器。
非戰區型(2-Tiers, 2-Layers):兩台機器,Web至於第一道防火牆後面,DB至於第二道防火牆
負載平衡,必須是Stateless,Web才能做到負載平衡,也就是使用者不管連哪一台都可以。DataBase通常沒辦法作負載平衡,因為最大的State就在DataBase,保留State就沒辦法作負載平衡,分兩台資料庫,一種是各自獨立的硬碟,應該稱為Partition,也就是將資料切割到不同機器上,另一種是做叢集。
用戶量不多時,使用單機型反而效能高,減少主機之間的傳遞,分兩台通常是考慮安全性,或是由不同Web Server共用。
用戶量多時才需考慮不同的架構,這時候在意的不是效能,而是擴充性,也就是單一的回應速度不再是唯一的參考,而是考慮整體產能。