본문 바로가기

네트워크 & 클라우드/AWS

[AWS-09] SNS vs SQS (작성 중)

SNS는 SQS와 네이밍이 비슷하여 헷갈릴 수 있어 함께 정리해본다

 

SNS란 무엇인가??
  • Simple Notification Service의 약자로, 서비스 간 혹은 서비스와 사용자 간의 메시징 서비스다.
  • 주제를 여러 주체가 구독
  • FIFO 방식 : 단 한 번만 메시지를 처리한다. 
  • 표준 방식 : 다양한 프로토콜로 메시지 전달(PUSH) 가능 

어떻게 사용해야 하는가??
SNS
  • SNS에서 주제를 생성해보자

주제 생성

  • 주제는 FIFO와 표준 유형으로 생성이 가능하다.

FIFO/표준 등 주제 유형 선택

  • FIFO 주제는 한번만 처리된다. 그래서 프로토콜은 SQS만 선택 가능.

FIFO의 경우 한번만 처리되기에 SQS만 구독가능하다!

  • 표준을 선택하면, 다양한 프로토콜 선택이 가능하다. 구독 수만큼 1:N으로 Push 할 수 있다.

표준 방식은 메시지를 구독 수만큼 Push 하기에 다양한 프로토콜이 가능하다.

  • 나는 표준 방식으로 이메일을 통한 메시지 수신으로 설정했다.

메일로 한번 받아보자

  • 구독 확인 메일이 왔다. confirm subscription 클릭하면 인증 완료

이런게 와있다! 구독 확인 메일! 구독! 좋아요! 알림설정까지!


CloudWatch
  • cloudwatch에서 경보를 생성해보자. Ec2의 CPU 사용률이 70%를 넘어가면 SNS를 통해 메일 발송이 되도록 세팅한다.

CPU 사용량이 70%를 넘기면...
생성해놓은 SNS(표준)으로 알림을 날린다!
경보생성 완료


EC2
  • 부하를 주는 Stress를 설치했다. cpu코어 수에 맞춰 부하를 주었다.

stress로 CPU 부하주기

  • 미나미노의 후지산 대폭발슛마냥 올곧게 솟아올라 임계치를 가볍게 넘겨버린다.

CPU가 후지산 대폭발슛을 날림

  • 그래서 메일옴 ㅋㅋ 끗.

SNS 서비스 정상 동작 확인완료!!


 

SQS란 무엇인가??
  • Simple Queue Service의 약자로, AWS에서 제공하는 큐(Queue) 서비스
  • 다른 서비스에서 사용할 수 있도록 메시지를 잠시 저장하는 용도. 그냥 큐. 말 그대로 큐
  • 최대 14일까지 저장 가능
  • SNS는 Push로 메시지를 넣어주지만, SQS는 Pull로 서비스가 메시지를 땡겨간다.
  • SQS를 거쳐서 서비스에 전달되는 구성을 가정해보자. 서비스 장애가 발생해도 큐에서 메시지를 보관하고 있어서 유실을 막을 수 있드아.
이것도 사용법을 알아보자!