Nginx
Nginx 作為 Google App Engine 應用程序的反向代理
我想使用 nginx 作為 Google App Engine 應用程序的反向代理來支持裸域,如此處所述。如果我使用這個方案,所有流量都會通過託管 nginx 的伺服器還是客戶端直接連接到 App Engine?它會成為性能和可用性的瓶頸嗎?
使用這種方法,您的所有流量都將通過 NGINX 伺服器執行,這將成為瓶頸,您必須確保它有足夠的容量來正常工作。它還會導致一些延遲(每個請求大約有 2 倍的延遲,因為您的客戶端將具有連接到 NGINX 的延遲,然後 NGINX 將具有連接到 AppEngine 的延遲)
無需為靈活環境和標準環境設置反向代理。
- 標準環境1中的 App Engine 實例沒有公共靜態 IP 地址,並且完全受主 Google 前端伺服器的保護。對您的應用程序的請求首先到達 Google 前端,然後前端根據您上傳的證書執行 SSL 安全檢查
$$ 2 $$,然後使用其內部 IP 將請求轉發到您的 App Engine 實例。因此不需要反向代理。
- 如果您使用的是 App Engine 柔性環境
$$ 3 $$,您可以為您的實例使用靜態 IP,因為它們使用 Compute Engine 虛擬機$$ 4 $$. 但是,App Engine 會在每個預先配置的 App Engine Flexible 實例前自動載入 Nginx 代理,因此您根本不必進行設置。您所要做的就是按照指南上傳您的 SSL 證書$$ 5 $$,並且請求將由Google前端審查,就像上面的標準環境一樣。因此不需要添加反向代理。
完整答案可以在這裡找到 問題