0%

AWS 學習紀錄 Part6 – SQS & SNS & Kinesis

前言

這篇文章是出自於線上課程 Ultimate AWS Certified Solutions Architect Associate 的所記錄的筆記。

本文

在設計 APP 的架構時,若以同步處理的方式進行,在同一時間處理大流量可能會發生問題,因此要藉由 解耦 的方式,解耦的方式可以分成

  1. SQS - Queue
  2. SNS - Pub/Sub
  3. Kinesis - Streaming

SQS

Queue 的訊息順序可能會不固定,訊息可能會重複

Standard Queue

  1. 流量無限制
  2. 訊息保留時間: 4~14 天
  3. 低延遲
  4. 每則訊息上限 256 KB

Access Policy

可以設定 Policy 讓特定使用者才可以使用 SQS

Message Visibility Timeout

避免其他 Consumer 消耗同一個訊息,當訊息被使用時,訊息的狀態會變更為 invisibility,這段時間預設為30秒

Dead Letter Queue

當訊息失敗的次數超過指定的次數,訊息會被派送到 Dead Letter Queue (DLQ) - 更一步 Debug

Delay Queue

訊息在特定的時間過後才能被使用,預設是 0 秒

Long Polling

持續撈取訊息儘管佇列為空,這麼做的好處是減少呼叫 API 的次數

FIFO

First In First Out - 訊息會按照訊息被處理,因此有吞吐量限制,而且也不會有重複的問題發生

SNS

定義 Pub / Sub,進一步達成一個訊息送往多個目標,與 SQS 組合成一個 Fan Out Pattern

Kenesis

負責 搜集處理分析 即時串流資料

Reference

  1. Ultimate AWS Certified Solutions Architect Associate 2021