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
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를 사용하여 더 쉽게 구현할 수 있다.
참고
donghun.dev/Firebase-Cloud-Messaging
utk-unm.blogspot.com/2016/10/websocket.html
'기타' 카테고리의 다른 글
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 |
Comment