전체 글 143

SSE(Server-Sent Events) 채팅 시스템

사전 기반 지식1단계 폴링 시스템 완전 이해 (MVC 패턴, JPA, Mustache)HTTP 통신의 한계: 클라이언트가 먼저 요청해야만 응답 가능JavaScript 기초: EventSource API와 이벤트 처리멀티스레드 개념: 동시성과 스레드 안전성에 대한 기본 이해 폴링 vs SSE 비교통신 방향클라이언트 → 서버 (요청/응답)서버 → 클라이언트 (푸시)연결 방식매번 새로운 HTTP 연결하나의 지속적인 HTTP 연결실시간성폴링 주기에 따른 지연즉시 전달 가능서버 부하높음 (불필요한 요청)낮음 (필요시에만 전송)네트워크 효율비효율적효율적구현 복잡도간단중간 SSE의 주요 활용 사례실시간 알림 및 알림 센터: 새로운 메시지, 친구 요청, 좋아요 등 서버에서 발생하는 이벤트들을 사용자에게 즉시 알릴 때 ..

SpringBoot 2025.09.02

폴링 채팅 시스템

사전 기반 지식Spring Boot 기본: @Controller, @Service, @Repository 어노테이션 이해Spring Data JPA: Entity, Repository 패턴 숙지HTTP 기본: GET, POST 요청/응답 이해HTML/JavaScript 기초: 기본 DOM 조작과 이벤트 처리Mustache 템플릿 엔진: 기본 문법 ({{}}, {{#}}) 폴링(Polling)이란?폴링은 클라이언트가 서버에 주기적으로 요청을 보내 새로운 데이터가 있는지 확인하는 통신 방식입니다. 폴링(Polling)이라는 용어는 클라이언트가 서버로부터 데이터를 계속해서 당겨오는(pulling) 행위에서 유래했습니다. 즉, 클라이언트가 서버에게 "새로운 데이터가 있나요?"라고 지속적으로 질문을 던져 응답을..

SpringBoot 2025.09.02

상태 관리란 뭘까?

공유 상태가 변경될 때, 동기화 하는 것을 상태 관리(State Management)라고 합니다. 상태 관리가 안되면 데이터 일관성을 잃게 됩니다.유저가 프로필을 변경해도 다른 화면에서 이전 프로필이 보이는 문제쇼핑 바구니에 표시된 상품의 개수와 실제 담긴 상품 개수가 다른 문제글을 작성했는데, 게시판에 반영되지 않는 문제(Create)글을 수정했는데, 게시판에 반영되지 않는 문제(Update)글을 삭제했는데, 게시판에 반영되지 않는 문제(Delete)동일한 데이터를 여러 곳에서 가지고 있기 때문에, 동기화가 필요하게 됩니다.

Flutter 2025.08.21