2020第12屆 IThome 鐵人賽 – PHP網站 on AWS 進化論 -從單主機一路進化到Serverless,以WordPress與 laravel 為例。

歸納出多套屬於自己的獨特的技術體系因該是每個工程師一直以來的必修功課
從七八年前以Wordpress作出大量的行銷用網頁與電商系統供公司同仁使用
到後幫客戶搬遷與優化各種服務到雲端上
由簡至繁、由繁至簡,一直是一個很大的課題
我們可以使用很複雜但是很棒的工具達成目的,但是絕大部分的人只會希望給我個解決方案直接使用就好
如果凡事都可以那麼簡單就好了
就如同PHP,入門很容易但是要做到專家需要非常大的努力
我在PHP領域中不是個專家,但是我對於PHP底層能怎樣拆分已經練就一身功夫
藉由這次活動整理出一個新的技術體系,整理出到底還有哪邊是可以補足相關技術細節

Day01 為什麼寫這篇文章與30天的進化路線

Day 02 php+Mysql 開發可以怎樣進化

Day 03 傳統感受 虛擬主機 Amazon Lightsail

Day 04 Amazon Lightsail LAMP 建置方案

Day 05 Amazon Lightsail 也可以套用 CDN (AWS Cloudfront)

Day 06 WordPress 上 Cloudfront 的最大貧頸 SSL

Day 07 讓AWS Cloudfront將主機的附載降低到10%以下, Cloudfront 快取行為設計

Day 08 SSL 並不是不能用 let's encrypt 只是要換個方式

Day 09 Amazon Lightsail 轉 AWS EC2

Day 10 轉換EC2第一個面對的問題與AWS中最基本的『網路與資安』

Day 11 AWS VPC 網路設計

Day 12 AWS Security Group

Day 13 EC2第一個拆分的東西MYSQL

Day 14 AWS MYSQL 的選擇與評估

Day 15 MYSQL 管理上的難題

Day 16 資料庫都拆出去了那WEB就要開始HA了

Day 17 附載平衡器上場 AWS ALB

Day 18 Data怎麼同步? AWS EFS 與 AWS S3

Day 19多台WEB 該怎麼平穩運行,session的處理

Day 20 WEB兩台不夠用?那就來自動擴展『Auto Scaling』

Day 21 導入Redis在降低附載!

Day 22 自動擴展開該怎麼評估怎麼長大?

Day 23 Auto Scaling 延伸的問題 Log的處理!

Day 24 都做到這麼大架構了,我能不能有中控台監控環境?

Day 25 WordPress 容器化相關的挑戰

Day 26 AWS ECS Fargate

Day 27 製作運行Docker imarge

Day 28 Imarge 要存在哪邊 ECR

Day 29 開始跑吧Fargate

Day 30 最終架構

Day 31 未完事項以及未來發展