[英]Using S3 as static web page and EC2 as REST API for it together? (AWS)
我發現這個鏈接涉及將靜態數據和web api分離為靜態s3 Web服務器和用於api的bean stalk應用程序以及用於創建網站的ec2 web服務器。 Charles的答案是准確的,CORS是你如何解決在兩個域之間移動的問題。
如何將S3用作靜態網頁,將EC2用作REST API? (AWS)
我的問題是你為什么要這樣做?
我的一些想法是:
優勢 - 我們使用節點作為api的Web服務器,這將減輕節點進程的負擔。
就是這樣。
不僅僅使用Bean Stalk來完成這一切的缺點
增加了CORS的復雜性更新軟件更復雜似乎有點過分,除非你有大量的靜態數據,我不這樣做
我錯過了另一個優勢
將前端邏輯與后端邏輯分離並單獨部署它們有很多好處。
第一個重要原因是以這種方式執行操作允許您將業務邏輯(您的API)與您的設計(您的前端)分開。
您可以將這兩個項目保存在單獨的Git存儲庫中。 您可以讓設計人員根據需要為前端項目提供盡可能多的更新,而無需為工程師打擾。
在單個整體項目中執行此操作(例如,在Elastic Beanstalk上):幾乎不可能,因為設計人員需要通過工程團隊迭代他們的代碼。
Web服務器很慢。 文件服務器(如S3)速度很快。 它們快速的原因是沒有“代碼”運行來從文件服務器訪問文件 - 只有一個文件正在下載。
例如,如果您從EC2實例提供單個Web應用程序,這意味着要查看頁面,您需要運行一些代碼來生成該HTML。
但是,如果將前端代碼部署到S3,則可以通過Web瀏覽器更快地直接下載該文件。
PROTIP :您還可以將您的S3網站置於CloudFront(CDN)之后,通過在世界各地的多個數據中心保留緩存副本來加快您的網站速度。
當您將項目分開並單獨部署時,您可以更快地迭代。
假設您的前端團隊在網站上發現了一個錯誤。 他們可以輕松修補/發布修復程序而無需經過工程設計。
您的工程師也是如此 - 他們現在有更多時間專注於構建核心應用程序邏輯,並且可以部署修復程序而無需擔心UI更改等。
當您按照自己的描述單獨部署內容時,您還可以獲得簡化后端邏輯的好處。
通過讓您的核心工程師只構建API,並且不再擔心前端問題,您可以比其他方式更快地發布更新。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.