SNS Flashcards
(21 cards)
SNS - это реализация архитекурного паттерна …
pub / sub publish subscribe
В SQS Consumer AutoScaling группе сообщение обрабатывает …. А в SNS Subscribers группе сообщение обрабатывает …
только один из группы, каждый из группы.
В SNS каждый подписчик получает каждое сообщение, если …
НЕ используется фича “filters”
❗️Каковы лимиты SNS?
Максимум 12_500_000 подписчиков на каждый топик. Максимум 100_000 SNS топиков в каждом AWS аккаунте.
Какие Security фичи имеет сервис SQS? Что это напоминает?
Encryption, Policies. Полностью аналогично в SNS.
Какие виды Encryption бывают в SNS? Что это напоминает?
In Flight, At rest (SSE), Client Side. Полностью аналогично в SQS.
Как использовать SNS In Flight Encryption? Что это напоминает?
Слать SNS сообщения в HTTPS API, пользуясь SSL/TLS сертификатом. Полностью аналогично в SQS.
Как использовать SNS At Rest Encryption? Какое оно бывает? Что это напоминает?
SSE-SNS шифрование самим SNS сервисом. SSE-KMS ключ шифрования предоставлен KMS сервисом. Полностью аналогично в SQS.
Как использовать SNS Client Side Encryption? Что это напоминает
клиент берёт ответственность за шифрование и расшифровку на себя. Полностью аналогично в SQS.
Что такое SNS Policies? Какие есть use-case для них? Что это напоминает?
IAM Policies позволяют разрешать / запрещать доступ к SQS/SNS API. Чтобы разрешить другим сервисам (SNS, S3…) писать в SQS очередь или SNS топик. Чтобы настроить Cross-Account access к SNS топику.
На сколько широко можно дать доступ при помощи SNS Topic Policies? Что это напоминает?
Можно дать доступ к очереди/SNS-топику даже ДРУГИМ АККАУНТАМ, Cross Account. Аналог S3 Bucket Policies.
Какие гарантии доставки и очерёдности сообщений бывают в SNS? Как на это повлиять?
SQS STANDARD даёт “At-lest once delivery” и “Best effort ordering”. SQS FIFO даёт “FIFO ordering” и “Exactly one delivery”.
❗️Какие недостатки есть у SNS FIFO?
ограниченный throughput. 300 транзакций/сек
На что похожа SNS FIFO topic? Как они связаны? Как это называется?
На SQS FIFO queue. Subscriber’ами для FIFO SNS топика могут быть только FIFO SQS очереди. НЕ Standard SQS очереди. Связка SNS FIFO топик + SQS FIFO очереди = “Fan Out” паттерн.
Что такое FIFO Deduplication? В каком сервисе оно есть? Для чего она нужна?
Эта фича FIFO позволяет избавиться от дубликатов сообщений, обеспечив Exactly-one processing. Есть в SQS и SNS.
Какой неожиданный результат можно получить при использовании FIFO Deduplication?
Если в течение 5-ти минут (интервал задаётся) отправить в FIFO очередь такое же сообщение, то оно будет отклонено.
Как работает FIFO Deduplication?
Content-based Deduplication (SHA-256 hash of message body) и Explicit Message Deduplication ID (мы явно выделяем поле для ID).
Что такое FIFO Message Grouping? В каком сервисе оно есть? Для чего она нужна?
Эта фича FIFO позволяет группировать сообщения, обеспечив им всем обработку одним и тем же Consumer’ом. Есть в SQS и SNS.
Есть ли Message Grouping в Standard? Как задаётся Message Grouping в FIFO?
НЕТ, только для FIFO, соблюдая порядок. Задаётся через поле MessageGroupId, обязательное для всех FIFO.
Как можно выбирать значение для MessageGroupId в FIFO? От чего это зависит?
Если MessageGroupId одинаковый для ВСЕХ сообщений, то FIFO подарок обеспечен для ВСЕЙ очереди. Если MessageGroupId одинаковый только в рамках ГРУППЫ сообщений (каждая группа для всего Consumer’а), то FIFO порядок обеспечен только внутри каждой группы.
Что если SNS topic находится в аккаунте “A”, а EC2 instance Consumer находится в аккаунте “B”? Как выглядит синтаксис?
нужно использовать IAM Resource Based Policy для SNS топика, ведь Resource Based Policy (как и в S3) являются Cross Account. Principle: {AWS: 111222333444}