반응형
안녕하세요 Dev. Pluto 입니다.
오늘은 개발을 하면서 client 와 server가 비동기로 데이터를 주고받을때는 어떻게 해야할까? 에 대한
고민의 답을 제 나름대로 정리해서 기록해보는 시간을 가질까 합니다.
먼제 제가 작성하는 게시글은 언제나 그렇듯 올바르지 않을 수 있습니다.
정보에 대한 비판은 언제든지 환영합니다.
Asyncronous 통신의 여러가지 방법
- polling
- Server Side Event (SSE)
보통의 일반적인 웹 서비스에서의 화면 단에서의 유저가 특정 동작을 하며 이벤트를 발생시키고,
이벤트에 따른 적잘한 응답이나 동작을 서버 단에서 데이터를 제공해줌으로써 사용자의 요구를 만족시키는 구조에서
사용자가 요청을 하고 즉각적인 응답을 내리지 못하는 경우가 발생하는 경우가 종종 있습니다.
(사용자가 Github Action을 호출해서 자신의 Repo에 있는 코드를 배포하거나, 비디오 제작 요청을 내리고 렌더링이 될 때까지 기다리는 등.)
단순히 웹 이나 네트워크를 예시를 들지 않더라도 일상적인 예시를 들어본다면,
하루 일정이 끝나고 밖에서 집으로 귀가를 할 때
집 앞의 도어락에서 비밀번호를 맞게 누르고 버튼을 누르면 문을 바로 열 수 있지만
카페에서는 음료를 주문하고 어느정도는 기다려야 음료를 받을 수 있습니다.
이렇듯
사용자(혹은 요청자)가 요청을 하고 응답을 받을 때 까지 필연적인 텀을 두고 상호작용하는것을 비동기식 통신 이라고 합니다.
반응형