POST요청 후 값 조회 시 갱신이 불규칙할때,

강인호·2023년 2월 17일
0

개인저장

목록 보기
80/87

현재 만드는 입력기 프로그램에서 랠리 정보를 전송 후
스코어가 갱신이 안되는,
정확히는 되다 안되다 하는 문제가 발생했다.
아예 일괄적으로 안되면 코드문제인가 싶겠는데 분명히 비동기 처리도 제대로 했고 왜 되는경우가 있고 안되는 경우가 따로 발생하는지 고민하다가 네트워크 탭을 봤는데

3개 단위로 통신이 이루어지고

위의 3개는 갱신이 안되고 밑의 3개는 갱신이 된 통신이다.

insertPlay가 Post요청이고 select요청 두개가 GET요청인데

여기서 시간을 잘 보면
순서대로 요청은 갔지만 위의 세 요청은 get요청이 post요청보다 빨리 끝난걸 알 수 있다.
post요청이 처리되어서 db가 갱신되기도 전에 조회를 해버려서 갱신이 안되었던것.
반대로 밑의 경우에는 post요청이 빨리 끝나서 갱신이 되고 그 후에 조회 요청이 들어가서 제대로 갱신이 되었다.

webAPI로 넘어간 비동기 작업 끼리도 순차적으로 처리되는 것이 아닌 먼저 처리되는 것 부터 반영이 되는 시스템(콜스택이랑 태스크큐)이다 보니 이런 상황이 발생한 것 같다.

비동기 작업끼리도 순서를 명확하게 정의해서 해결했다.

0개의 댓글