post-thumbnail

무신사 AI ROOKIE ENGINEERING 합격 회고

올해 초에 진행된 무신사 AI ROOKIE NATIVE ENGINEERING 전형에 최종 합격하게 되었다🎉 채용 전환형 인턴을 뽑는 전형이라 과정이 길었다. 그래서 그 과정들을 회고해보려고 한다. 지원 계기 2022년 대학 입학 당시만 해도 ChatGPT가 없던

3일 전
·
2개의 댓글
·
post-thumbnail

쉽게 설명하는 개발자가 되기 위한 연습장 - 강사 활동 기록

이번 글에서는 실제로 내가 교육 현장에 나가 아이들을 만나고 직접 수업을 기획하고 진행했던 실전 경험을 담아보고자 한다. 여러 수업에 참여했지만, 그중에서도 특히 기억에 남고 의미 있었던 대표 수업 세 가지를 언급하겠다. 🌟이 경험들이 단순한 ‘교육 활동’에 머무르

2025년 8월 29일
·
0개의 댓글
·
post-thumbnail

실시간 좌석 응답 기능 도입

먼저 결과부터 보자!! 아래 영상은 JMeter 도구를 활용해 500명의 사용자가 특정 courseId에 대해 수강신청 → 수강취소를 반복하도록 테스트한 장면이다. 사용자 화면에서도 좌석 수가 즉시 반영되는 것을 확인할 수 있다. ❓우리는 어떻게 이런 실시간 좌석 반

2025년 8월 17일
·
0개의 댓글
·
post-thumbnail

Redis로 대기열 시스템 성능 개선 (pub/sub)

수강신청 시스템에서 가장 까다로운 부분은 단순히 대기열을 유지하는 것이 아니라"지금 입장이 허용된 사용자가 실제로 로그인까지 완료했는지"를 추적하고 "빈자리가 생겼을 때 누굴 입장시킬지" 정확히 판단하는 것이다.초기에는 서버 내부에서 아래와 같이 관리했다.대기열: Li

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

대기열 시스템에 SSE 도입, 비동기 스레드풀 튜닝

1. 도입 배경 기존 수강신청 시스템은 Polling 방식으로 동작하고 있었다. 사용자는 일정 간격으로 자신의 대기 상태를 확인하며, ALLOWED 상태가 되었는지를 계속 서버에 요청해야 했다. Polling 방식은 단순하고 안정적이라는 장점이 있었지만 대기 인원이

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

아파치 카프카의 미래

카프카는 기본적으로 자가 호스팅이 가능한 오픈소스 메시징 플랫폼이지만, 운영 및 유지보수에 대한 부담을 줄이기 위해 SaaS(Software as a Service) 형태로 제공되는 서비스들도 존재한다. 대표적으로는 AWS의 MSK(Amazon Managed Strea

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

아파치 카프카 개발

1. AWS에 카프카 클러스터 설치, 실행 https://blog.voidmainvoid.net/325 2. 카프카 프로듀서 애플리케이션 👉 Producer 역할 Topic에 해당하는 메시지 생성 특정 Topic으로 데이터를 publish 처리 실패/재시도 ⚠️

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

아파치 카프카 기초

1. 아파치 카프카 개요 서비스 초기에는 Source Application과 Target Application이 직접 연결된 단방향 구조를 사용한다. 하지만 애플리케이션 수가 늘어날수록 각 애플리케이션 간 데이터 흐름이 복잡해지고 포맷 파편화나 배포 충돌, 장애 대응의

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

대기열 서버 도입: polling 사용 로직과 테스트 결과

1. 문제 시작: 서버가 터진다💥 우리 팀은 일반적인 MVC 구조로 수강신청 서비스를 개발했다. 사용자는 로그인한 뒤, 바로 수강신청 API를 호출하는 방식이었다. 처음엔 잘 작동했지만 JMeter 테스트에서 수천명이 동시에 접속할때 CPU와 DB 커넥션 풀이 빠르

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

수강신청 시스템, 플로우차트/ DB락/테스트

✍️ 설계보다 코드가 먼저? 이번에 수강신청 시스템을 구현하면서 가장 먼저 한 일은 코드를 짜는 것이 아니라 로직을 플로우차트로 그려보는 것이었다. 이 차트를 먼저 만들고 나니 구현이 훨씬 쉬워졌다. ✔️ 무엇을 언제 검사해야 하는지, 예외는 어디에서 발생할 수 있는

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

MVP 대규모 동시접속 부하테스트 - JMeter

1. 테스트 개요 수천 명 이상이 동시에 몰리는 수강신청 상황에서 시스템이 다운되지 않고 얼마나 잘 버티는지, 특히 제한된 자원(t3.large) 환경에서 얼마만큼의 트래픽을 처리할 수 있는지를 보기 위해 이번 테스트를 진행햇다. 👉이 시스템은 다음과 같은 특성이 있다: 짧은 시간 내 폭발적인 접속 실시간 좌석 정보와 동기성 중요 백엔드 성능이 느려지면...

2025년 6월 29일
·
0개의 댓글
·

반복로직/JPQL -> QueryDSL으로 리팩토링

1. JPQL의 한계 Spring JPA를 처음 배우면 대부분 @Query를 쓰거나 findByXXX() 같은 메서드 네이밍 전략을 사용해서 데이터를 조회한다. 이때 사용하는 쿼리 언어가 JPQL(Java Persistence Query Language)이다. > JP

2025년 6월 11일
·
0개의 댓글
·

JPA 연관관계, 양방향을 사용하면 위험할까?

이번 글에서는 최근 프로젝트를 하면서 실제로 겪은 연관관계 이슈와 공부하면서 정리하게 된 JPA 연관관계의 기초 개념과 주의할 점들을 간단하게 기록한다. 📢 연관관계란? DB 테이블은 서로 연결되어 있고, 이 연결을 관계(연관관계)라고 부른다. 예를 들어, 강의(c

2025년 5월 29일
·
0개의 댓글
·

[스프링 MVC 1편] 2

서블릿은 서버에서 HTTP 요청 메시지를 파싱하고, 필요한 로직을 처리한 후 응답 메시지를 생성해 클라이언트에게 전달하는 핵심 웹 컴포넌트다. 또한 클라이언트와 서버를 잇는 HTTP 요청/응답의 중심이며 서블릿 컨테이너가 이를 실행해준다. 1. Hello 서블릿 등록

2025년 5월 23일
·
0개의 댓글
·
post-thumbnail

[한이음 드림업] 수강신청 기본 MVP 설계와 협업 기록

➡️ 공모전 프로젝트의 목표 이번 글에서는 한이음 공모전에서 진행하고있는 수강신청 시스템 개발 시작 과정을 정리하려고 한다. 수강신청 서버는 특히 대용량 트래픽에 취약하기 때문에 '터지지 않는 시스템'을 만들자는 목표로 공모전 프로젝트를 시작하게되었다. ➡️ 기본 M

2025년 5월 22일
·
0개의 댓글
·
post-thumbnail

[스프링 MVC 1편] 1

1. 웹 애플리케이션의 기본 구성 ➡️ 웹 서버(Web Server) HTTP 기반으로 동작 정적인 리소스(HTML, CSS, JS, 이미지 등)를 클라이언트에게 제공 ex) Nginx, Apache 단순히 요청받은 정적 파일을 그대로 응답해주는 역할이다. ➡️ 웹

2025년 5월 12일
·
0개의 댓글
·
post-thumbnail

[스프링 핵심 원리] 8

1. 빈 스코프란? > 빈이 존재하는 생명 주기 범위를 지정하는 것이다. 스프링에서는 기본적으로 모든 빈이 싱글톤이다. 즉, 애플리케이션 시작 시 한 번만 생성되고 모든 의존 주입 시 동일한 인스턴스를 공유하게 된다. 그런데 이렇게 항상 같은 객체를 공유하는 것이 불

2025년 5월 11일
·
0개의 댓글
·

[스프링 핵심 원리] 7

스프링을 사용하다 보면 객체의 초기화와 종료 시점에 작업을 해줘야 할 때가 있다. 예를 들어 네트워크 연결을 열거나 닫아야 할 때, 또는 파일이나 데이터베이스 리소스를 정리해야 할 때이다. 💡 왜 생명주기 콜백이 필요할까? 어플리케이션을 실행할 때 꼭 필요한 작업들

2025년 5월 5일
·
0개의 댓글
·

[스프링 핵심 원리] 6

1. 다양한 의존관계 주입 방법 ➡️ 1) 생성자 주입 생성자 호출시점에서 딱 1번만 호출되는 것이 보장된다. 불변, 필수 의존관계에 사용한다. ⚠️ 생성자가 딱 1개만 있으면 @Autowired를 생략해도 자동 주입이 된다. ➡️ 2) 수정자 주입 setter라

2025년 5월 3일
·
0개의 댓글
·

AICE 자격증 1,2,3급

강의 수료 후 📅 2월 대성 지역 아동 센터 수업 참관 코디니 활용 블록코딩 교육 시연 관찰 수업 진행 시 강사의 태도와 아이들과의 소통 방식 학습 📅 3월 AICE Future 정기시험(2025년 제2회) 응시 1급, 2급, 3급 자격증 모두 취득 🏅 자격증

2025년 4월 15일
·
0개의 댓글
·