728x90
반응형
1. WebSocket이란?
먼저 HTTP 프로토콜 통신은 아래와 같이 단방향으로 통신이 이뤄진다.
- 클라이언트가 서버에 요청
- 서버가 응답하여 클라이언트에게 요청값을 토해냄
그러나 웹소켓은 서버와 클라이언트가 실시간으로 메세지를 주고받는다. 양방향 통신이 이뤄져서 빠르고 한번 연결을 맺으면 쭉 유지된다.
2. WebSocket을 써야하는 이유
채팅, 좋아요 등 실시간으로 이뤄지는 작업들은 웹소켓으로 하는것이 좋다. HTTP 통신은 GET, POST 등 단순하게 주고받는 경우 괜찮을 수있다. 그런데 Retrofit은 HTTP 통신을 기반으로 작동하므로, 실시간 채팅이나 즉각 카운팅이 필요한 경우에는 Android 에서도 웹소켓을 구현해야한다. Retrofit만으로는 네트워크 통신이 불안정 할 수있다. (실제 앱을 배포한 경우에는 특히!)
그러므로 OKHttp 라이브러리를 이용하여 안드로이드에서도 웹소켓을 구현해야 할 경우가 매우 많다.
nsp로 특정 네임스페이스를 정해서 (예를들면 /chat) 그 네임스페이스만의 이벤트나 데이터를 가져오면 된다.
앱에서도 소켓을 만들어서 사용하는 경우가 많으므로 개념을 이해하는게 중요한거같다.
728x90
반응형
'Android Kotlin' 카테고리의 다른 글
Android device Storage (0) | 2024.07.10 |
---|---|
Android SDK SparseArray 알아보기 (0) | 2024.07.07 |
Android Kotlin ProcessCameraProvider (0) | 2024.06.02 |
Android Kotlin redundant sam constructor observer (0) | 2024.06.01 |
Android Kotlin Unit Test 작성하기 (0) | 2024.05.29 |