springboot(2)
-
[Database] Spring Data Redis에서 Pipeline 활용하기
이번 포스팅은 Redis 파이프라인에 대해서 알아보고 사용해 보는 과정을 포스팅하겠습니다. redis pipeline이란?우선 redis는 클라이언트와 TCP/IP 소켓 통신을 기반으로 통신하며 기본적으로 요청을 보낼 때 아래와 같이 수행합니다. 요청 -> 응답, 요청 -> 응답 (네트워크를 계속 왔다 갔다 함) 3-way handshake를 수행하면서 수신자가 받을 준비가 되어있는지, 송신자가 보낼 준비가 되어있는지를 체크합니다. 이 체크가 모두 완료 되고나서야 실제로 패킷이 전송되며 통신이 이루어집니다. 이러한 체크과정이 TCP 통신에선 필수로 포함되어야하기 때문에 다량의 요청을 단발성으로 여러번 보내게 되면 그만큼의 통신 체크 과정도 여러번 수행하므로 그만큼의 오버헤드가 발생합니다. 따라서 다량의 ..
2025.12.29 -
[SpringBoot] SpringBoot에서 S3로 업로드하는 3가지 방법 비교하기 (Stream, MultipartFile, AWS Mulitpart)
이번 포스팅에서 SpringBoot 프로젝트에서 S3에 업로드하는 세 가지 방법을 비교하고, 각 방법의 장단점을 알아보겠습니다. S3에 파일을 업로드하는 세 가지 방법파일을 S3에 업로드하는 방법은 크게 세 가지가 존재합니다.Stream을 이용한 업로드 방식MultipartFile을 이용한 업로드 방식AWS Multipart을 이용한 업로드 방식설명하기에 앞서 이해하면 좋은 내용들을 짚고 넘어가겠습니다. Stream이란? 스트림이란 데이터의 흐름을 의미합니다.이러한 스트림을 프로그램 입장에서 생각하면 다음 두 가지로 구분할 수 있습니다.데이터가 외부로부터 출발하여 프로그램으로 들어오는 스트림데이터가 프로그램에서 출발하여 프로그램 외부로 빠져나가는 스트림이때 전자를 InputStream, 후자를 Outpu..
2025.05.15