AWS - 設計一個用客制網域全球使用者上傳檔案到 S3 的系統 元件說明 S3 儲存圖片檔案 CloudFront 全球加速、CDN、安全代理上傳與下載 OAC(Origin Access Control) CloudFront 與 S3 之間的私有授權通道 ACM(AWS Certification Manager) 建立與綁定 HTTPS 憑證給 CloudFront Route53 DNS 將網域指向到 CloudFront CORS + Pre-signed URL 安全授權上傳圖片給 S3 實作步驟 Step.1 建立 S3 Bucket 設定一個 bucket...

AWS - DRS(Disaster Recovery) DRS(Disaster Recovery)AWS Elastic Disaster Recovery (AWS DRS) 是一項災難復原服務,旨在透過使用具成本效益的儲存和最少運算資源,以快速、可靠的方式復原內部部署和雲端應用程式,從而最小化停機時間和資料遺失。 它利用連續區塊級別複寫 (Continuous block-level replication) 技術,可將 復原點目標 (RPO) 縮短至幾秒鐘,並將 復原時間目標 (RTO) 通常控制在 5–20 分鐘之間。 運作方式AWS DRS...

AWS - Database Stream Database StreamDatabase Stream 其實是一個統稱,就是 AWS 上資料庫服務的「資料變更事件串流機制」如 Neptune Stream, DynamoDB Stream 等,他們的核心概念都相同 當資料發生變化(新增 Insert,修改 Modify,刪除 Remove)時,自動產生事件紀錄,讓其他服務可即時反應,每筆變化都會被寫入 Stream 並且附上變更前/後的 Image事件順序與 Primary Key 一致(Parition Key 層級順序保證) 什麼是 Database...

AWS - DynamoDB Accelerator(DAX) VS Global Tables DynamoDB Accelerator(DAX)主要功能 記憶體內快取(In-memory cache) ms 級讀取延遲 適合讀取密集的應用程式 適用場景 需要快速讀取響應 重複讀取相同數據 讀取操作頻繁 特點 只在 Single-Zone 操作 寫入直接到 DynamoDB 可大幅減少讀取成本 限制 不支援跨區域複製 快取有效期限制 僅提升讀取性能 DynamoDB Global...

AWS - DynamoDB GSI VS LSI DynamoDB GSIDynamoDB Global Secondary Index(GSI) 在 DynamoDB 上為一張 Table 建立的 『跨分區、可獨立查詢鍵』索引,允許用不同的 Partition Key/Sort Key 查詢資料,並有自己儲存與吞吐特性(通常為 eventually consistent) 基本概念 GSI 有自己的 Partition Key 與 Optional 的 Sort Key,可以與 DynamoDB Table 的不同 GSI 儲存的是表中被投影(projected)...

AWS - DynamoDB Scan VS Query Query定義 使用 Partition Key 進行精確查找 [Optional] 使用 Sort Key 進行範圍查找 高效的資料檢索方式 工作原理 直接定位到特定的 Partition 僅讀取該 Partition 的資料 [Optional] 可選用 Sort Key 回傳匹配結果 Scan定義 檢查表中的每一個項目 全表掃描 [Optional] 可用 Filter 條件 工作原理 遍歷整個表 讀取所有項目 [Optional] 應用...

AWS - Dedicated Instance and Dedicated Host 前言Dedicated Host 與 Dedicated Instance 都是 AWS 提供給需要專屬實體硬體隔離的客戶使用的 EC2 部署選項,但它們在控制程度、可見性、合規性與計費方式上有顯著差異。 Dedicated Instance(專用實例)Dedicated Instance 是運行在專屬給你帳號的硬體(物理伺服器)上的 EC2 instance。你與其他 AWS...

AWS - EC2 Placement Group Placement GroupPlacement Group 是一種 EC2 Deployment Strategy,可以讓你控制多台 EC2 Instance 在 AWS 基礎建設的 物理位置,以達到特定的 性能要求 或 高可用目的。 Placement Group 三種類型Cluster Placement Group 把 Instance 放在同一個 機架/AZ內,提供極低延遲 & 超高網路頻寬 適合 高效能運算(HPC) 分布式大數據處理(EX: Spark,...

AWS - EC2 Instance 狀態檢查 EC2 Instance Status Check透過 Instance Status Check 你可以快速判斷 EC2 是否已經偵測到任何可能會防止 instance 執行 app 的問題。EC2 會在每次執行 EC2 Instance Auto Check 用來識別硬體與軟體問題。 Status Check 會每分鐘執行一次並回傳通過或失敗。如果所有檢查都通過,Instance Status 為 OK 其餘為 Impaired。狀態檢查內建於 EC2 中。因此無法停用或刪除 狀態檢查類型 系統狀態檢查系統狀態檢查會監控 instance...

AWS - EC2 Spot Block Spot Block相信大家比較常聽到 EC2 Spot Instance 比較沒有聽過 Spot Block,EC2 Spot Block(Spot Instance with Defined Durartion) 是一種短期保證不中斷的 Spot Instance,讓你用 Spot 的價格啟動 EC2,但可保證在 1~6 小時內不會被回收(Interrupted) Spot Instance Spot 是 AWS 剩餘的運算資源,可比 On-Demand 便宜許多 缺點:AWS...