5월 커뮤니티 리뉴얼이 끝나고 6월 신규 피쳐 개발 전에 시간이 조금 있어서 백로그의 일감을 하나 처리하기로 맘 먹었다. 재밌어보이는 것도, 어려워 보이는 일감도 많아 고르르는 재미(?) 가 있었다. 그 중에서 내가 고른 일감은 두근두근 코인 시세 배치 -> 스트림 전환!
9시에 수익률 랭킹이 갱신이 되지 않음
랭킹 배치가 10분 마다 돌 때, 로직 수행시간이 2~3분정도 소요된다. 따라서 9시에 배치가 시작되어도 실제 완료 시간은 차이가 있다. + 캐시 반영 등등
아..! 이게 배치 latency 문제란 이런거구나!! 확 와닿는 순간이었다.
그래서 사실 제일 궁금한건 그래서!! 실시간으로 시세가 어떻게 나가는 데!!였다. 나에게 실시간이란 막연히 동경하는 미지의 세계였달까.
시세는 polling 방식이 아니다. 지속적인 HTTP 요청이 발생하기 때문에 리소스 낭비가 발생한다.
시세는 SSE 방식이다. 이벤트가 [서버 -> 클라이언트] 방향으로만 흐르는 단방향 통신 채널이다. SSE는 클라이언트가 polling과 처럼 주기적으로 http 요청을 보낼 필요없이 http 연결을 통해 서버에서 클라이언트로 데이터를 보낼 수 있다.