본문 바로가기

전체 글

(8)
[Spring Boot] 예약 알림을 위한 동적 스케줄링(with. TaskScheduler) 안녕하세요, [모두의택시] 팀 서버 개발자 박성훈입니다.이번 포스팅에서는 우리 서비스에 예약 알림 메시지 전송을 구현하기 위해 겪었던 시행착오에 대해 공유드리고자 합니다.1. 요구사항 정의 [모두의택시] 에서는 채팅 기능이 있습니다. (참고: https://modutaxi-tech.tistory.com/6) [Spring Boot] WebSocket & Stomp & Redis pub/sub & FCM으로 개발하는 채팅기능안녕하세요, [모두의택시] 팀 서버 개발자 박성훈입니다.이번 포스팅에서는 우리 서비스에 채팅 기능 개발,도입을 위해 겪었던 시행착오에 대해 공유드리고자 합니다.1. 요구사항 정의택시 동승modutaxi-tech.tistory.com  우리는 여기서 추가적인 기능을 하나 더 구현해야 했습..
[React-native] useQuery와 suspense를 활용한 랜더링 처리 React를 활용해 서버에서 데이터를 fetching하고 이를 화면에 그리는 과정은 간단합니다. 하지만 하나의 컴포넌트에서 여러개의 데이터를 fetching한다면 어떻게 화면이 랜더링될까요? 또 그 데이터들이 불러오는 시간이 각각 다르다면 어떻게 랜더링이 되는 걸까요? const func1 = async () => { await new Promise((resolve) => setTimeout(resolve, 2000)); console.log('func1 complete!'); return 'func1';};const func2 = async () => { await new Promise((resolve) => setTimeout(resolve, 4000)); console.log('func2 ..
[Spring Boot] 채팅 서비스 고도화 ( With. Stomp 예외처리 ) 안녕하세요, [모두의택시] 팀 서버 개발자 박성훈입니다.자바에서는 오류 코드를 전파하지 않기 위해 메서드에서 예외를 '던지는'방법으로 예외 처리를 진행할 수 있습니다.이번 포스팅에서는 우리 서비스에서 WebSocket과 Stomp를 적용시키며 예외처리를 진행한 방법에 대해 소개드리고자 합니다.첫 번째 문제 상황우리의 서비스는 기본적으로 RuntimeException을 상속받은 구현체인 BaseException을 적용하여 예외처리를 합니다. 이를 통해 우리는 기본적으로 errorCode(특정 오류 코드)와 message(구체적인 메시지), status(HTTP 상태 코드)를 포함하여 사용자 정의 예외를 생성합니다.@Getterpublic class BaseException extends RuntimeExc..