DMZ區域及非軍事管理區域,及安全區劃。
三層架構中,網絡工程師一般將網絡分爲三個層次:
第一層,DMZ區,這裏實現了應用的代理功能,
-》應用負載;
負載均衡的意思,會分發請求,和單點故障消除;
-》加速功能;
據說這個nginx反向代理比squid的加速還要好。具體的實現原理是將請求的數據緩存起來,在覈心層的數據沒有變化之前
所有的請求都是從緩存中返回,所以加速了應用;
-》安全問題;
如果這裏被攻破了,這裏並沒有實際的應用數據,所以保護了核心業務;
-》過濾ssl,
一般這裏會把https的,也就是SSL認證的這塊用webservers過濾掉,之後將其他應用的端口反向代理過來;
-》NAT功能
如weblogic是中間件、是不允許將自身的服務端口設置爲80或者443的、那麼就需要用nginx反向代理過來,要麼就使用負載均衡,但負載均衡是需要花錢的,而且還不便宜、據說差不多的都得30W左右。
第二層,核心層;
-》這裏是真實的物理主機 ,提供對外的服務提供。 這裏的策略是隻接受從DMZ區域的主機的訪問;
而這裏的nginx主要充當中間件的作用,及提供真實的業務應用服務;
最典型的這層裏部署的是 IBM websphere[was] \ ORACLE weblogic
第三層,數據區;
-》這裏是生產數據存儲區,這裏的策略是僅接受從核心區的請求而且是單向的;
NGINX的反向代理功能及DMZ區域的實現。
nginx的反向代理一方面是可以用作負載,及常說的軟負載;另一方面就是訪問加速功能;
這樣就可以接受各個端口的請求,如,80,21之後將這些請求轉發到真實的物理機器,而在應用防火牆中設置從DMZ到核心區的訪問控制策略,
這樣就滿足了DMZ區域的緩存和安全需求。
而且nginx還可以像負載均衡一樣,可以做會話保持,如基於來源的,基於cookie的。
這樣做的好處就是即提高了應用的訪問速度,又可以增加安全性。