嘿,
我想創建一個完全用 Python 處理的小型網站。我將為此使用 Flask 框架。到目前為止,我與 AWS ECS 和 ELB 服務有很多接觸,但我承認,Python 本身對我來說仍然是陌生的。這就是為什么我有幾個問題:
1.我了解從軟體工程師的角度來看,最好將后端和前端分開-因此最好基于Flask創建兩個單獨的Python專案-一個是API,另一個是前端,對? 一般來說,我猜兩者都應該是 ECS 服務中的單獨服務。
2.在這樣的配置中,他們是否都必須使用某種 WSGI 服務器,比如 gunicorn?這是在具有多個 vCPU 的 Fargate 中運行的好解決方案嗎?
3.對于這個解決方案,圍繞 Nginx 有很多問題和神話。到目前為止,我認為如果我使用 Application Load Balancer 就足夠了(畢竟它還充當反向代理)。是否有必要在 ECS 中使用 Nginx 作為 Sidecar,這樣做有什么好處嗎?假設使用 Nginx 是可取的,它應該只用于前端還是 API?
在這里非常感謝您提供任何支持性建議 - 我知道我已經提出了很多要求。
uj5u.com熱心網友回復:
在我的考慮
1-如果您想擁有一個微服務概念,您可以將您的應用程式與前端和后端分開,每個應用程式都有自己的框架。對于前端,您可以使用Angular、React、 Vuejs等。Python是后端技術,您可以撰寫強大的restfull api與您的前端應用程式進行通信
2-如果您使用例如Docker容器化您的應用程式并為每個服務撰寫 Dockerfile,這在微服務中最常見,可以使用任何服務器(如 nginx、apache 或 WSGI 服務器)運行您的容器(我沒有使用這個)然后公開埠(如果需要)以使其可訪問
3-當您在 AWS Fargate 中運行服務時,可以將負載均衡器連接到您的服務,并且服務本身運行任務每個任務實際上是一個或多個容器,可能是 nginx 服務器或其他東西,如果您的意思是正常在你的容器中有 nginx。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/444640.html
