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..
gRPC 실습(연습)
·
BE
파일 구조build.gradlebuildscript { ext { protobufVersion = '3.25.1' protobufPluginVersion = '0.8.14' grpcVersion = '1.58.1' }}plugins { id 'java' id 'org.springframework.boot' version '3.3.4' id 'io.spring.dependency-management' version '1.1.6' id 'com.google.protobuf' version '0.9.4'}group = 'com.example'version = '0.0.1-SNAPSHOT'java { toolchain { languageVersion = JavaLanguageVersion.of(17) }..
gRPC
·
BE
등장배경1. Server-Client Model하나의 메인 프레임에서 동작하는 Monolothic 구조로 설계 시절 네트워크 통신 중요 X고가인 메인 프레임워크 → 비교적 저가의 워크스테이션 서버로 대체하고 싶어함But, 메인 프레임워크의 초고양 사양 그대로 제공하는데 한계⇒ 메인 프레임워크 기능 → 워크스테이션 서버로 분산 + 네트워크 연결로 서비스하는 방식 채택= Server-Client Model⇒ 서버-서버, 서버-개인PC 간 네트워크 연결 및 통신 중요→ OSI 7 layer, TCP/IP 등 네트워크 계층 구조 정의, 발전 2. IPC프로세스는 기본적으로 상호독립적메모리 공유 X → 각자 자신의 일만 하고 서로 간섭 XBut, 필요에 따라 프로세스 간 정보를 교환해야 하는 경우→ 별도의 수단 ..
kimmeoww
'PROTO' 태그의 글 목록