## ⚠️ 문제 1. Retrier 동작 순서 - **현재 동작**: CONNECT -> if ERROR -> connect close -> Retrier 실행 -> 이미 socket level에서 close 되어 전송 불가능. - **해결방안**: ERROR 프레임 받을 시 자동으로 disconnect 되기때문에 connect 시도부터 다시해야한다. <br/> ## ⚠️ 문제 2. Retrier 실행 횟수 ### 상황 - **현재 동작**: Retry시 1번 재시도하고 그래도 에러 발생시 error 리턴. - **Alamofire 동작**: Retry시 해당 retry가 성공할때까지 무한 재시도. ### Alamofire동작 방식으로 바꿀 시 문제점 - 소켓 에러 발생시 정확한 에러 원인별로 분기가 어려움. - **해결방안 1**. Stomp ERROR frame일때만 retry를 시도한다. 웹소켓 에러는 Log로 표시한다. - 단, 문제 1동작이 선행적으로 해결되어야함. - **단점**: 서버에 에러명세가 명확하지 않을 경우 무한 호출 가능성 -> 단, Alamofire도 이렇게 동작함.
상황
Alamofire동작 방식으로 바꿀 시 문제점
소켓 에러 발생시 정확한 에러 원인별로 분기가 어려움.
해결방안 1. Stomp ERROR frame일때만 retry를 시도한다. 웹소켓 에러는 Log로 표시한다.
단점: 서버에 에러명세가 명확하지 않을 경우 무한 호출 가능성 -> 단, Alamofire도 이렇게 동작함.