
EC2 + Docker Compose 기반 GitHub Actions CI/CD 자동배포 플로우 이번 프로젝트에서의 배포 자동화는 develop 브랜치에 PR 시 GitHub Actions가 Docker 이미지를 새로 빌드하고, Docker Hub에 push한 뒤,

배포 환경에서의 소셜 로그인 로컬에서는 localhost 기준으로 Redirect URI를 등록하면 소셜 로그인을 테스트할 수 있다. 하지만 실제 배포 환경 소셜로그인을 사용하기 위해서 각 플랫폼마다 요구하는 조건이 있다. 이번 프로젝트에서는 네이버, 카카오, 구글

뮤지션이 자신의 음악과 콘텐츠를 효과적으로 홍보할 수 있도록 돕는 팀 프로젝트를 진행 중이다.홍보 페이지에는 활동명, 곡 제목, 발매일, 스트리밍 링크, 소개 문구뿐 아니라 대표 이미지도 함께 노출되어야 했다.사용자가 직접 이미지를 업로드하고, 이를 안정적으로 저장한

본 콘텐츠는 구름 서포터즈 활동으로 지원을 받아 작성된 교육생의 실제 경험 후기입니다. > KT x Goorm 백엔드 부트캠프 ☁️ 해커톤 참여 이번 4월 4일부터 4월 5일까지 강남 구름스퀘어에서 진행된 해커톤에 참여했다. 짧은 시간 안에 아이디어를 실제 서비스

2차 팀 프로젝트에서 스크럼을 통해 지도를 추가하자고 했다.네이버는 유료여서 카카오 지도 API를 선택했고 그 과정을 적어보려 한다.국내 사용자 기준 접근성과 구현 효율이 가장 좋다고 판단했다.또한 공연장 위치를 직관적으로 제공하기에 적합했고 프론트엔드와 연동이 매우

✅ 개요 2차 팀 프로젝트에서 결제 기능 개발을 맡게 되었다. 스크럼을 통해 토스페이먼츠 api로 구현하기로 결정했고 그 과정을 적어보려 한다. [Toss Payments API 가이드 ](https://docs.tosspayments.com/guides/v2/pay

본 콘텐츠는 구름 서포터즈 활동으로 지원을 받아 작성된 교육생의 실제 경험 후기입니다. > KT x Goorm 백엔드 부트캠프 ☁️ 해커톤 참여 동기 먼저 이번 3월부터 프로젝트 시작이라 바쁜와중에 해커톤까지 병행하는 것에 참여에 대해 고민을 많이 했다. 아직 해커
🚨 SQL 긴급 정리 Undo Retention 트랜잭션이 완료된 후에 바로 Undo 데이터를 재사용하지 말아라고 오라클에게 힌트를 주는 것 슬롯 ITL -> 트랜잭션 ID, status, UBA(Undo Block Address), 커밋 SCN(트랜잭션 성공 시

pq_distribute 힌트를 사용해 옵티마이저의 선택을 무시하고 사용자가 직접 조인을 위한 데이터 분배 방식을 결정할 수 있다.Parallel Query Distribution => 병렬 쿼리 분배라는 의미옵티마이저가 파티션된 테이블을 적절히 활용하지 못하고 동적

2. 병렬 Order by와 Group by 1. 병렬 Order by order by를 병렬로 수행하려면 테이블 큐를 통한 데이터 재분배가 필요한데, 쿼리 수행이 완료된 직후에 같은 세션에서 v$pq_tqstat를 쿼리해 보면 테이블 큐를 통한 데이터 전송 통계를

1. 병렬 처리 병렬 처리란, SQL 문이 수행해야 할 작업 범위를 여러 작은 단위로 나누어 여러 프로세스나 쓰레드가 동시에 처리하는 것을 말한다. 1. Query Coordinator과 병렬 서버 프로세스 QC (Query Coordinator) 는 병렬 SQL문을

1. 테이블 파티셔닝 파티셔닝은 테이블과 인덱스 데이터를 파티션단위로 나누어 저장하는 것을 말한다. 테이블을 파티셔닝하면 하나의 테이블일지라도 파티션 키에 따라 물리적으로는 별도의 세그먼트에 데이터가 저장되며, 인덱스도 마찬가지다. ✅ 파티셔닝이 필요한 이유 관리적

6. Sort Area를 적게 사용하도록 SQL 작성 만약 소트 오퍼레이션 처리가 불가피하다면 메모리 내에서 처리를 완료할 수 있게 해야하고, Sort Area의 크기를 늘리는 방법도 있지만 그 전에 Sort Area를 적게 사용하도록 하는 방법을 찾아야 한다. 1

3. 데이터 모델 측면에서의 검토 불합리한 데이터 모델이 소트 오퍼레이션을 유발하는 경우를 흔히 접할 수 있다. ✅ 사례 1 - M:M 관계를 갖도록 설계된 테이블 한쪽을 group by 해서 1:M 관계로 만들어주었지만 과거 데이터이관 시 발생한 예외 케이스 때문

1. 소트 튜닝 원리 SQL 튜닝에서 빠질 수 없는 요소가 소트 튜닝이다. 소트 오퍼레이션은 수행과정에서 CPU와 메모리를 많이 사용하고, 데이터량이 많을 때는 디스크 I/O 까지 일으킨다. 많은 서버 리소스를 사용하는 것도 문제지만 부분범위처리를 불가능하게 해

Outer 조인문을 작성하면서 일부 조건절에 Outer 기호(+)를 빠뜨리면 Inner 조인할 때와 같은 결과가 나온다.이럴 때 옵티마이저는 Outer 조인을 Inner 조인문으로 바꾸는 쿼리 변환을 시행한다.옵티마이저가 굳이 이런 쿼리 변환을 시행하는 이유는 조인 순

4. 조건절 Pushing 이떤 이유에서건 뷰 Merging 을 실패했을 때, 옵티마이저는 포기하지 않고 2차적으로 조건절 Pushing을 시도한다. 조건절 Pushing은 참조하는 쿼리 블록의 조건절을 뷰 쿼리 블록 안으로 Pushing 하는 기능을 말한다. 조건

쿼리 변환은 쿼리 옵티마이저가 SQL을 분석해 의미적으로 동일하면서도 더 나은 성능이 기대되는 형태로 재작성하는 것을 말한다.본격적으로 최적화를 하기 전에 사전 정지 작업을 하는 것이라고 말할 수 있다.결과만 보장된다면 무조건 쿼리 변환을 수행한다.일종의 규칙 기반 최