profile
큰 그림을 보려 노력하는 백엔드 개발자입니다😊
post-thumbnail

Spring-AI로 RAG 챗봇 만들어보기

SpringAI 를 활용하여 문서를 기반으로 답변하는 챗봇을 만드는 과정 정리. 🧠 RAG 구조 간단 정리 RAG는 크게 두 단계로 나뉘어져 있다. Retrieval (검색): 질문과 관련된 문서를 벡터 검색을 통해 가져옴 Generation (생성): 검색된

2025년 6월 9일
·
0개의 댓글
·
post-thumbnail

Spring-AI로 LLM 사용해보기

최근 LLM을 개발하고 활용하는 추세가 빠르게 확산되고 있다. Spring AI는 LangChain과 같이 이러한 LLM을 보다 쉽게 사용하도록 돕는 라이브러리. 이러한 흐름과 함께, Spring Boot 환경에서 Spring AI를 활용하면 LLM 기능을 간편하게 통

2025년 6월 7일
·
0개의 댓글
·
post-thumbnail

SpringSecurity - Method 단위 인가

수정이나 삭제 등의 비즈니스 로직을 구현할 때, 엔티티의 소유자를 확인하고자 하는 로직을 작성해야할 때가 있습니다.이런 경우에 서비스 코드마다 유저가 소유자인지 확인하는 코드를 써야 합니다.아래에 보이는 코드는 짧을 지 모르지만, 서비스 코드마다 중복된 검증 로직이 들

2024년 11월 20일
·
0개의 댓글
·
post-thumbnail

멀티모듈에서의 Dockerfile 최적화하기

기존 프로젝트에서 작성했던 Dockerfile을 통해 이미지를 빌드하면 속도 저하 및 많은 용량에 대한 문제가 있어, 그에 대한 해결을 공유하고자 합니다.프로젝트에 대한 구성은 아래의 글에서 확인할 수 있습니다.\[Github Actions + Docker + EC2]

2024년 11월 16일
·
0개의 댓글
·
post-thumbnail

[Github Actions + Docker + EC2] 로 배포 자동화 구성하기

현재의 개발에서는 지속적 배포(Continuous Deployment, CD)를 통해 빠르고 안정적인 서비스 제공이 필수가 되었습니다. 특히, MSA(Microservices Architecture)를 채택한 프로젝트에서는 각 서비스의 독립성과 배포 효율성을 극대화하는

2024년 11월 16일
·
0개의 댓글
·
post-thumbnail

내일배움캠프(스프링 심화 1기) 솔직 후기!

내일배움캠프 스프링 심화 1기를 수료하고 그에 대한 저의 개인적인 후기를 공유하고자 합니다~!저는 컴퓨터과학과를 전공한 후, 졸업하고 1년 동안 혼자서 방향을 잡지 못하고 방황했습니다. 개발 공부를 하긴 했지만, 체계적인 학습이 부족하여 실질적인 기술을 쌓는 데 어려움

2024년 11월 1일
·
0개의 댓글
·
post-thumbnail

SpringBoot 멀티모듈 MSA 에서의 Docker 빌드 문제

진행 중인 MSA 프로젝트에서 각 서비스 모듈에 대해 Docker를 활용한 CI/CD 파이프라인을 구축하던 중 Docker 환경 구축에 관련된 몇 가지 문제를 겪었습니다. 이를 해결하는 과정을 공유하고자 합니다.프로젝트가 멀티모듈 구조로 되어 있어서, 서비스 모듈별로

2024년 10월 14일
·
0개의 댓글
·
post-thumbnail

Docker 실행 시 port 사용 불가 에러

프로젝트를 진행하면서, 여러 팀원과 환경을 맞추기 위해 편리하게 docker 를 설정 후 실행하고 있었다.그런데, 어느 날 잘 실행되던 docker 가 안되는 것이다...!아래 사진은 에러 내용이다.내용을 살펴보면, docker를 2181 port 로 binding 하

2024년 10월 9일
·
0개의 댓글
·
post-thumbnail

WebMvcTest 진행 중 ComponentScan 에러

프로젝트 진행 중, 컨트롤러에 대한 단위테스트를 하기 위해 Mockito 와 WebMvcTest 를 이용해 테스트를 작성하고 있었다.현재 프로젝트는 여러 멀티모듈로 이어져 있고, application 에서 다른 모듈의 component 도 scan 하고 있어서 Spri

2024년 10월 6일
·
0개의 댓글
·
post-thumbnail

Contoller Test : Pageable 관련 에러

Springboot API 를 개발하고 컨트롤러 테스트를 작성하던 중 발생하는 에러..전체 조회 테스트에 Pageable 객체가 모킹돼있어서 그런 것 같았다. 아래는 테스트 코드는 전체 조회(검색)을 하는 코드이다. Response 로 가는 객체의 필드 존재 여부를 확

2024년 9월 9일
·
0개의 댓글
·
post-thumbnail

queryDsl 로 조회 검색 같이 처리하기

Spring Boot 로 API 기능들을 개발하다보면 전체 조회 및 검색 기능을 어떻게 처리할까 고민이 된다.많은 검색 파라미터, 권한 조건 처리(Security Filter 에서 1차로 거를 수 있지만 그렇지 않은 경우), 페이징 처리 등을 그냥 JPA 로 개발하는

2024년 9월 3일
·
0개의 댓글
·
post-thumbnail

Spring boot로 kafka와 연결하기(kafka replication error)

Kafka 학습을 위한 실습 진행 중 만난 에러...docker-compose-kafka-errordocker로 kafka 컨테이너를 실행하고 스프링부트 프로젝트에서 작성된 producer 와 consumer 를 실행하면 위와 같은 에러가 무한으로 발생했다.딱 보면 b

2024년 8월 19일
·
0개의 댓글
·
post-thumbnail

Redis & Cache

캐싱은 Spring 내부에서도 비교적 간단하게 구성할 수 있다.redis 와 함께 SpringBoot 에서 캐싱을 적용하는 방법을 알아보자.캐싱을 사용하기 위한 configuration 을 작성해준다@EnableCaching : CacheManger의 구현체가 Bean

2024년 8월 13일
·
0개의 댓글
·

MSA - 간단한 상품 주문 프로젝트 : 생성(주요 설정, 의존성 설치)

simple-msa-order-product지난 시간에는 Spring Cloud 를 사용하여 msa 의 기본적인 개념과 동작 과정을 설명했다. 이번에는 위 사진과 같이 프로젝트를 구성해보겠다.RequirementSpringBoot 3.3.2Java17gradlemsa

2024년 8월 13일
·
0개의 댓글
·
post-thumbnail

Docker 에 대해 알아보기

2024년 8월 12일
·
0개의 댓글
·
post-thumbnail

SpringBoot 에 Redis 적용

이전 글에서는 Redis 자체를 이용하는 방법을 설명했다. docker를 통해 redis 이미지로 설치하고, 인텔리제이에서 redis 를 연결 후 직접 콘솔에서 명령어들을 익혀보았다.이번에는 SpringBoot 어떻게 Redis 를 활용하는지 살펴보자.redis 관련

2024년 8월 7일
·
0개의 댓글
·
post-thumbnail

Redis 타입, 명령어

이번에는 Redis 의 기본적인 명령어에 대해 알아보자. Docker-compose.yml redis 설치는

2024년 8월 6일
·
0개의 댓글
·
post-thumbnail

In-Memory DB, redis

기존의 관계형 데이터베이스를 사용하는 주된 이유는 영속성 데이터, 즉 파일시스템에 데이터를 저장함으로서 서비스가 종료되어도 유지되는 데이터를 위해서이다.하지만, 많은 서비스가 일시적인 데이터를 저장해야 하는 상황을 필요로 한다. (ex> 로그인 정보, 장바구니 등등)이

2024년 8월 5일
·
0개의 댓글
·
post-thumbnail

MSA - Service Discovery

서비스 디스커버리 서비스 디스커버리는 마이크로서비스 아키텍처에서 각 서비스의 위치를 동적으로 관리하고 찾아주는 기능으로 MSA 에서는 필수적인 기능이다. 각 서비스는 등록 서버에 자신의 위치를 등록하고, 다른 서비스는 이를 조회하여 통신 주요기능 서비스 등록,

2024년 8월 1일
·
1개의 댓글
·
post-thumbnail

MSA - Spring Cloud 에 대해 알아보기

하나의 애플리케이션을 여러 개의 독립적인 서비스로 분리하여 개발, 배포, 유지보수를 용이하게 하는 소프트웨어 아키텍처 스타일각 서비스는 특정 비즈니스 기능을 수행하며, 서로 독립적으로 배포되고 확장될 수 있음서비스 간의 통신은 주로 HTTP/HTTPS, 메시지 큐 등을

2024년 7월 31일
·
1개의 댓글
·