
Spring에서 대부분의 Bean은 기본적으로 싱글톤(Singleton) 스코프로 관리됩니다. 즉, 애플리케이션 컨텍스트 내에서 해당 Bean의 인스턴스는 하나만 생성되고, 모든 요청에서 이를 공유해 사용합니다.이러한 구조는 성능 측면에서는 효율적이지만, 요청 간 자원 공유로 인해 사용자 정보가 노출되는 것이 아닌가? 하는 우려가 생길 수 있습니다.그러나 실제로는 잘 설계된 Bean이라면 싱글톤 방식에서도 사용자 정보 유출 없이 안전하게 동작할 수 있습니다. 그 핵심은 바로 Stateless 설계입니다. 싱글톤(Singleton) 방식이란?"싱글톤"이란 객체가 애플리케이션 전체에서 단 하나만 생성되어 재사용되는 디자인 패턴입니다. Spring에서는 기본 스코프가 Singleton이므로, 특별한 설정이 없..

Java 기반의 비동기 네트워크 프레임워크인 Netty는 고성능 서버/클라이언트 애플리케이션 개발에 자주 활용됩니다.이번 글에서는 총길이를 사전에 알 수 없는 바이트 스트림 데이터를 수신해야 하는 상황에서 Netty를 활용해 어떻게 문제를 해결할 수 있었는지 정리해 보겠습니다.Netty와 데이터 수신의 특징Netty는 비동기 이벤트 기반 네트워크 프레임워크로, TCP와 같은 연결 지향 프로토콜 기반의 통신에서 널리 사용됩니다.우리는 외부 기관과 통신할 때 Netty를 통해 데이터를 바이트 스트림 형태로 수신하고 있으며, 다음과 같은 상황을 마주하게 됩니다:데이터는 여러 조각으로 나뉘어 들어오며 한 번에 도착한다는 보장이 없다.연결을 유지하자니 언제 끝날지 모르고, 끊자니 데이터가 누락될 위험이 있다.즉,..
- Total
- Today
- Yesterday
- Java
- 날짜
- stateless 설계
- usereventtriggered
- Git
- React
- mybatis
- Windows
- JPA
- TLS
- tomcat
- 깨짐
- parse
- SpringBoot
- WAS
- web
- gradle
- SSL
- JSON
- html
- spring
- jQuery
- 컨테이너
- Eclipse
- Oracle
- vscode
- Linux
- IMAGE
- SQL
- docker
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |