목록분류 전체보기 (152)
kjp0411 님의 블로그
[프로그래머스] 최솟값 만들기 - Java 풀이문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/12941 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제 분류정렬그리디배열문제 요약길이가 같은 두 배열 A, B가 주어진다.각 배열에서 숫자를 하나씩 뽑아 서로 곱한 뒤, 그 곱한 값들을 모두 더한다.이때 각 배열의 원소는 한 번씩만 사용할 수 있다.최종적으로 만들어지는 누적합이 최소가 되도록 하는 값을 구하는 문제이다.예를 들어 다음과 같다.A = [1, 4, 2]B = [5, 4, 4]결과 = 29풀이 아이디어이 문제의 핵심은 다음과 같다.작은 값..
[프로그래머스] JadenCase 문자열 만들기 - Java 풀이문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/12951 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제 분류구현문자열 처리문자 변환문제 요약문자열 s가 주어졌을 때, 각 단어의 첫 문자는 대문자로 만들고 나머지 문자는 소문자로 만들어 반환하는 문제이다.단, 첫 문자가 알파벳이 아닌 경우에는 그대로 두고, 그 뒤의 알파벳들은 소문자로 처리해야 한다.예를 들어 다음과 같다."3people unFollowed me" → "3people Unfollowed Me""for the last..
[프로그래머스] 최댓값과 최솟값 - Java 풀이문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/12939 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제 분류구현문자열 처리최소/최대값 탐색문제 요약공백으로 구분된 숫자 문자열 s가 주어진다.문자열 안에 있는 숫자들 중에서 최솟값과 최댓값을 찾아 아래 형식의 문자열로 반환하는 문제이다."최솟값 최댓값"예를 들어 다음과 같다."1 2 3 4" → "1 4""-1 -2 -3 -4" → "-4 -1""-1 -1" → "-1 -1"풀이 아이디어문자열은 공백 기준으로 숫자가 구분되어 있다.따라서 먼저 s..
TIL - 2026.05.22오늘의 주제부트캠프 수료식 및 전체 과정 회고오늘 한 일오늘은 부트캠프 수료식이 진행되었다.입문 주차부터 숙련, 심화, 최종 프로젝트까지 이어진 과정을 모두 마무리했다.처음에는 기능 하나를 구현하는 것도 어렵게 느껴졌지만, 시간이 지나면서 백엔드 개발 흐름, API 설계, DB 연동, 인증/인가, 배포, 협업 방식까지 실제 프로젝트 중심으로 경험할 수 있었다.특히 최종 프로젝트에서는 단순히 기능을 만드는 것에서 끝나는 것이 아니라, 여러 서비스가 함께 동작하도록 구성하고, 문제 상황이 발생했을 때 원인을 찾고 해결하는 과정을 많이 경험했다.배운 점이번 부트캠프를 통해 가장 크게 느낀 점은 개발은 단순히 코드를 작성하는 일이 아니라는 것이다.기능 구현도 중요하지만, 왜 이런 구..
TIL - 2026.05.21주제최종 프로젝트 개발 키워드 정리프로젝트 개요이번 최종 프로젝트에서는 예매 서비스를 주제로 MSA 기반 티켓팅 시스템을 개발했다.단순히 기능을 구현하는 것뿐만 아니라, 실제 배포 환경에서 여러 서비스를 분리하고, Gateway를 통한 단일 진입점 구성, Keycloak 기반 인증/인가, Eureka 서비스 디스커버리, Config Server를 통한 중앙 설정 관리, AWS 기반 배포와 ALB 이중화까지 경험했다.특히 나는 인프라 및 배포 환경 구성, Gateway 연동, 서비스 간 통신 확인, 운영 환경 문제 해결을 중심으로 프로젝트에 참여했다.개발 키워드 정리키워드사용한 이유설명 가능한 포인트MSA서비스별 책임을 분리하고 확장성을 고려하기 위해 사용user, match,..
TIL - 2026.05.20오늘 한 일오늘은 티켓팅 서비스의 실제 배포 환경에서 프론트 화면 적용, Gateway CORS 검증, Keycloak 권한 설정, 서비스 헬스체크를 중심으로 점검했다.특히 정적 HTML 파일을 서버에 배포하여 현재 외부에서 접근 가능한 데모 화면을 교체했고, ALB를 통해 Gateway로 요청이 정상 전달되는지 확인했다.또한 프론트엔드에서 API 요청 시 발생할 수 있는 CORS 문제를 OPTIONS 요청으로 직접 검증했고, Access-Control-Allow-Origin, Access-Control-Allow-Methods, Access-Control-Allow-Headers 등이 정상적으로 반환되는 것을 확인했다.주요 작업 내용1. 정적 HTML 배포기존에 작성된 ti..
TIL - 2026.05.19오늘 한 일오늘은 티켓팅 MSA 프로젝트의 배포 환경에서 ALB 기반 이중 애플리케이션 서버 구성과 Gateway CORS 문제 해결을 진행했다.기존에는 단일 EC2 애플리케이션 서버에 서비스들이 배포되어 있었기 때문에, 인프라 담당자가 실시간으로 서버 상태를 확인하고 직접 반영해야 하는 부담이 있었다. 이를 개선하기 위해 main 서버와 main 복제 서버를 구성하고, 두 서버를 ALB 뒤에 배치하여 외부 요청이 로드밸런서를 통해 분산되도록 구성했다.또한 프론트엔드에서 Gateway API를 호출할 때 CORS preflight 요청이 401 Unauthorized로 응답되는 문제가 발생했고, Gateway 보안 설정과 CORS 허용 Origin을 수정하여 해결했다.발생한 ..
TIL - 2026.05.18오늘 한 일오늘은 MSA 티켓팅 시스템의 서비스별 CI/CD 설정을 정리하고, 각 서비스가 GitHub Actions와 GHCR 기반 배포 흐름에 맞게 동작하도록 수정했다.주요 작업은 다음과 같다.club-service CI/CD 설정 확인match-service CI/CD 설정 확인payment-service CI/CD 설정 확인queue-service CI/CD 설정 확인reservation-service CI/CD 설정 확인seat-service CI/CD 설정 확인테스트 실행 시 불필요한 인프라 의존성 비활성화PR 머지 후 로컬 및 EC2 환경에서 최신 dev 브랜치 반영docker-compose.app.yml 기준으로 서비스 재시작 및 정상 동작 확인CI/CD를 도입..
TIL - 2026.05.15오늘 한 일오늘은 EC2 배포 환경에서 서비스를 최신화하면서, 배포 이후 추가로 발생한 인증/인가 및 환경 설정 문제를 해결했다.단순히 컨테이너를 띄우는 것에서 끝나는 것이 아니라, 실제 Gateway를 통해 API가 정상 동작하는지 확인하고, 서비스 간 설정 불일치 문제를 하나씩 정리했다.1. Gateway 권한 설정 추가 및 수정배포 후 API 테스트를 진행하면서 일부 API가 Gateway에서 제대로 권한 제어되지 않는 문제가 있었다.특히 예매, 좌석 관련 API는 서비스 내부에서만 검증하는 것이 아니라, Gateway 단계에서 먼저 인증/인가를 처리해야 했다.문제 상황Gateway를 통해 API 요청 시 권한 검증이 누락될 수 있음특정 API는 로그인 사용자만 접근 가..
TIL - 2026.05.14오늘 한 일오늘은 티켓팅 MSA 프로젝트의 1차 배포를 마무리했다.기존에는 로컬 Docker Compose 환경에서 Gateway, Eureka, Config Server, Keycloak, Redis, Kafka, PostgreSQL, 각 서비스들을 함께 실행하며 통합 테스트를 진행했다.이후 배포 환경에서는 EC2 인스턴스에 Docker Compose 기반으로 서비스를 올리고, Gateway를 통해 각 API가 정상적으로 동작하는지 확인했다.특히 배포 전에는 다음 항목들을 집중적으로 점검했다.Docker Compose 환경 변수 정리서비스별 포트 및 컨테이너 네트워크 확인Gateway 라우팅 설정 확인Eureka 서비스 등록 상태 확인Keycloak JWT 인증 설정 확인관..
