알림 관련 프로세스 (FCM, Web Socket, SSE)

FCM(Firebase Cloud Messaging) 


1. FCM 란?

Android, iOS 및 웹 애플리케이션의 메시지 및 알림을위한 크로스 플랫폼 클라우드 솔루션

 

 

2. FCM 작동 원리

FCM 구현에는 송수신을 위한 두 가지 주요 구성요소가 포함

1) Firebase용 Cloud Functions 또는 앱 서버와 같이 메시지를 작성, 타겟팅, 전송할 수 있는 신뢰할 수 있는 환경

2) 해당 플랫폼 별 전송 서비스를 통해 메시지를 수신하는 iOS, Android 또는 웹(자바스크립트) 클라이언트 앱

 

 

3. FCM의 장점 

1) FCM은 교차 플랫폼 메시지 솔루션이기 때문에 FCM을 이용해서 개발을 진행하면, 플랫폼에 종속되지 않고 Push 메시지를 전송할 수 있다. 

2) FCM에서 제공하는 여러 기능들도 함께 사용 가능하다.

3) 기능 구축에 시간과 비용이 줄어든다.

 

 

4. FCM 우수 사례

 

 

 

5) FCM 공식 가이드 문서 

https://firebase.google.com/docs/cloud-messaging?hl=ko

 

Firebase 클라우드 메시징

Firebase 클라우드 메시징(FCM)은 무료로 메시지를 안정적으로 전송할 수 있는 교차 플랫폼 메시징 솔루션입니다.

firebase.google.com

 

 

WebSocket


1. WebSocket이란?

서버와 클라이언트 간에 socket connection을 유지해서 언제든 양방향 통신 또는 데이터 전송이 가능하도록 하는 기술이다. 

 

 

2. WebSocket 작동 원리 

WebSocket은 서버와 클라이언트간의 연결 환경을 단 하나만 구성하고, 해당 연결환경 유지하면서 서로 데이터를 양방향으로 주고 받는다.

 

 

SSE (Server-Sent Events)


1. SSE 란? 

서버의 데이터를 실시간으로, 지속적으로 Streaming 하는 기술이다. 

웹 표준으로써 IE를 제외한 모든 브라우저에서 지원되며, IE역시 polyfill을 통해 지원이 가능하다. 

 

 

2. SSE 작동 원리 

SSE는 파일 전송처럼 첫 연결시에 데이터를 주고받은 뒤 연결된 상태를 유지하고 단방향으로 서버가 일방적으로 데이터를 전송한다.


WebSocket 과 SSE 알림 


SSE(단방향)에서 수행할 수 있는 모든걸 WebSocket(양방향)에서 수행할 수 있기 때문에 WebSocket이 더 유용하다. 하지만 클라이언트에서 데이터를 전송하지 않아도 되며, 서버 작업에서만 업데이트를 해주면 되는 기능(뉴스피드, 주식 시세)에서는 SSE를 사용하여 더 쉽게 구현할 수 있다. 

 

 

 

참고

nsinc.tistory.com/218

h0ng3.tistory.com/47

donghun.dev/Firebase-Cloud-Messaging

withhsunny.tistory.com/41

boxfoxs.tistory.com/403

utk-unm.blogspot.com/2016/10/websocket.html

egloos.zum.com/tiger5net/v/5662710

okky.kr/article/380704

'기타' 카테고리의 다른 글

ElasticSearch  (0) 2021.05.03
GIT  (0) 2021.03.07
권한 인증방식  (0) 2020.08.16
Template Engine  (0) 2020.08.15
Database CRUD 타입 및 사용 방법  (0) 2020.08.09

Tags

Read Next