Spring Webflux, WebClient
·
BE/Spring | SpringBoot
Blocking 방식요청한 작업이 끝날 때까지 다른 작업 X 기다림= 하나의 Thread 요청 처리 → 처리함수 실행하면 제어권 함께 넘김⇒ 해당 함수가 끝날 때까지 다른 함수 호출 XNon-Blocking 방식요청한 작업이 수행되는 동안 다른 작업 O= 호출자가 함수 호출 → 제어권을 호출자가 가지고 있음⇒ 다른 작업 수행 ORestTemplateMulti-Thread + Blocking 방식Thread가 다 차는 경우 요청이 Queue에서 대기⇒ 클라이언트 접속 수↑ (동시성 ↑) → CPU, 메모리 충분해도 Thread 부족 → 성능 ↓Thread ↑ → CPU, 메모리 성능 ↓Spring 5.0 이후 → WebClient 사용하는 것이 권장TomactJava 기반의 웹 애플리케이션 서버, Spri..
gRPC / WebFlux + Netty / WebSocket
·
BE/Spring | SpringBoot
chat service : 실시간 AI 채팅 서비스채팅 AI 모델 ←gRPC→ SpringBoot 서버 ←WebSocket→ 클라이언트채팅 AI 모델: Python, FastAPI서버: Java, SpringBoot클라이언트: React, TypeScript기술 사용 이유gRPC언어에 독립적이고 protocol buffers로 직렬화하여 데이터 전송 속도가 빠름AI 모델과의 스트리밍 통신을 비동기로 처리하고, 응답을 실시간으로 전송WebFlux + Netty논블로킹과 병렬 처리 지원비동기 처리해서 사용자가 여러 개의 요청을 보냈을 때 병렬로 처리해서 처리 속도를 높임참고데이터베이스에 채팅 내역 저장 XAWS EKS에 배포파일구조build.gradlebuildscript { ext { protobufVe..
kimmeoww
'WebFlux' 태그의 글 목록