프로젝트/webflux 채팅서버 2

로깅, 푸시 알림 요청 비동기로 처리하기

요구사항비즈니스 로직payload 로 넘어온 채팅방 PK가 정말 있는 채팅방인지와 사용자가 채팅방에 들어가있는지 확인해당 채팅방에 채팅 레코드 추가해당 채팅방에 있는 사용자 모두 조회조회된 사용자들의 device 에 모두 push 요청push 요청 보내기 시작하면서부터 모든 사용자의 device 에게 요청 다 보낼 때까지의 시간 측정로깅들어오는 모든 요청에 대해 로그를 남겨야 함response 없이 request 요청에 대한 로그만 남기도록request header 의 Authorization 헤더 제외http method, uri, 요청 온 시간, 요청 ip, request body 로깅 필요 (GET 요청 무시)DB 에다가도 로그 남겨야 하고 파일에다가도 로그 남아야 함DB 그리고 파일로의 로그 저장..

PlantUML을 이용하여 시퀀스 다이어그램 설계 (1)

현재 Spring Webflux를 이용하여 간단한 채팅 서버를 구현하고 있다. 주 기능은 다음과 같다.1. 사용자가 채팅 요청을 보내면 사용자가 들어간 채팅방의 모든 사용자에게 채팅을 보낸다.2. 모든 사용자에게 푸시 알림을 보낸다. (비동기적으로 소요시간이 0.5s가 되는 푸시 알림 서버에 Request를 보내고,Response를 Client에게 보낸다.) 클라이언트의 비지니스 로직은 다음과 같다.비즈니스 로직- payload 로 넘어온 채팅방 PK가 정말 있는 채팅방인지와 사용자가 채팅방에 들어가있는지 확인- 해당 채팅방에 채팅 레코드 추가- 해당 채팅방에 있는 사용자 모두 조회- 조회된 사용자들의 device 에 모두 push 요청- push 요청 보내기 시작하면서부터 모든 사용자의 device 에..