기술 회고 4

예약 게시글 업로드 1편

이번 포스트에는 예약 게시글 업로드를 구현하면서 새로 배웠던 내용을 다시 한번 정리해보겠습니다. 예약 게시글 업로드를 구현하기 위해 ThreadPoolTaskScheduler, RabbitMQ를 사용하였고, 각 기술의 특징에 대해서 설명해보겠습니다. ThreadPoolTaskScheduler먼저 ThreadPoolTaskScheduler입니다. ThreadPoolTaskScheduler는 Spring Framework에서 제공하는 스케줄링용 스레드 풀 기반의 TaskScheduler 구현체입니다. ThreadPoolTaskScheduler를 사용하기 위해 Bean으로 등록을 해주었습니다.@Configurationpublic class SchedulerConfig { @Bean public Th..

기술 회고 2025.05.30

맞춤 추천 게시글 시스템 구축 - 구현 2편

이 전에 작성했던 맞춤 추천 게시글 시스템 구축 - 구현 1편에 이어서 구현 2편을 진행해보겠습니다. 해당 시스템에는 레디스를 적용할 계획입니다. 레디스의 목적은 추천 게시글 목록이 이미 존재한다면 해당 데이터를 리턴하고, 추천 게시글 목록이 존재하지 않으면 레디스에 저장해서 관리하기 위함입니다. 레디스 설정파일은 다음과 같습니다. 유저 ID를 Key로 게시글 ID 리스트를 Value로 가진 자료구조로 저장해보겠습니다.@Configuration@EnableCachingclass RedisConfig( @Value("\${redis.host}") private val host: String, @Value("\${redis.port}") private val port: Int) { ..

기술 회고 2025.04.19

맞춤 추천 게시글 시스템 구축 - 구현 1편

이 전에 작성했던 맞춤 추천 게시글 구축 - 이론편을 기반으로 구현편을 이어서 진행하도록 해보겠습니다.기술 스택 버전Spring Boot : 3.4.4Kotlin : 1.9JDK : 21MySQL : 9.2.0Spring Data JPA : 3.4.4Kotlin JDSL : 3.5.5Coroutine : 1.8.1테이블 설계가장 먼저 테이블이 필요하므로 최대한 간단하게 설계를 진행해보겠습니다. 필요한 테이블로는 '사용자', '게시글', '사용자 게시글 활동 이력' 테이블이 있습니다.User(사용자) 테이블@Entityclass User( @Id @GeneratedValue(strategy = jakarta.persistence.GenerationType.IDENTITY) var id: L..

기술 회고 2025.04.17

맞춤 추천 게시글 시스템 구축 - 이론편

요즘 많은 서비스가 사용자 맞춤 추천을 통해 관심 있는 콘텐츠를 효과적으로 제공하고 있습니다. 이번 글에서는 간단한 방법으로 맞춤 추천 게시글 시스템을 구축하는 기본 개념과 구현 방법에 대해 살펴보겠습니다. 이번 포스팅에서는 이론적인 부분에 대해서 집중적으로 정리해보겠습니다. 대표적인 추천 방식추천 방식의 대표적인 방식으로는 컨텐츠 기반 추천 시스템과 협업 필터링 추천 시스템이 있습니다. 해당 방식의 장점과 단점을 테이블로 정리를 해보겠습니다. 구분 장점 단점컨텐츠 기반 추천 시스템• 신규 사용자·아이템에도 강함(콜드 스타트 완화)• 외부 사용자 데이터 필요 없음 → 프라이버시 이슈 적음• 추천 근거(아이템 특징) 설명이 쉬움• 아이템 특징 추출·정규화가 필요(텍스트 전처리, 태그 관리 등)• 사용..

기술 회고 2025.04.17