GitHub PR에 AI 코드 리뷰 자동화 붙이기 (Gemini 무료 API + GitHub Actions)PR을 올릴 때마다 AI가 코드 리뷰를 해준다면? 혼자 개발하는 사이드 프로젝트에서도 놓치기 쉬운 버그나 안티패턴을 잡아줄 수 있다.이 글에서는 Google Gemini 무료 API와 GitHub Actions를 조합하여, PR이 생성되면 자동으로 AI 코드 리뷰 코멘트가 달리는 환경을 구축한 과정을 정리한다.비용은 0원이고, 설정도 워크플로우 파일 하나면 끝난다.전체 동작 흐름먼저 완성된 시스템이 어떻게 동작하는지 전체 그림부터 보자.개발자가 PR 생성/업데이트 ↓GitHub Actions 워크플로우 자동 트리거 ↓git diff로 변경된 코드 추출 ↓Gemini API에 diff + 리뷰 ..
전체 글
개발자. Java, Spring안녕하세요! 백엔드 개발의 핵심인 Redis와 AWS ElastiCache에 대해 정리한 내용을 공유합니다.기본 개념부터 대용량 트래픽 처리를 위한 고급 캐싱 전략(PER 알고리즘)과 실무 명령어까지, 교과서처럼 참고하실 수 있도록 정리했습니다.📑 목차1. 핵심 개념: Redis vs AWS ElastiCache2. 캐시 전략 (Caching Strategies)3. 확장 및 공유 전략 (Scale & Share)4. 실무 구현 기술 (Spring Boot)5. 대용량 트래픽 문제 해결 (Troubleshooting)6. 필수 Redis 명령어 모음1. 핵심 개념: Redis와 AWS ElastiCache1.1 Redis (Remote Dictionary Server)Redis는 모든 데이터를 메모리(..
1. 영속성 컨텍스트 (Persistence Context)정의 : EntityManager 가 관리하는 엔티티 객체들의 집합DB에서 ‘조회’ 하거나 ‘저장’ 된 엔티티는 영속성 컨텍스트에 ‘영속 상태’ 로 저장됨(영속 = 지속)하나의 트랜잭션 내에서만 유효되며, 트랜잭션이 끝나면 컨텍스트는 종료됩니다. • 트랜잭션commit, 엔티티매니저 flush, JPQL 쿼리실행 1차 캐시 • 1. 영속성 컨텍스트는 내부적으로 Map 구조의 1차 캐시를 사용함 • 2. @Id 값을 기준으로 엔티티를 저장하며, 같은 엔티티는 DB를 다시 조회하지 않고 캐시에서 가져옴 • 3. 중복 조회 최소화, 변경 감지(Dirty Checking), 캐시 무효화 2. 엔티티 매니저(EntityManager)정의 : ‘엔티티’..
정적 웹 호스팅1. S3 버킷 생성 후 파일 업로드[퍼블릭 액세스를 위해 설정 모두 해제][index 파일 업로드 후 URL 복사 버튼을 통해 url 접속] [정상 동작 확인] 2. 버킷 속성 정적 웹 호스팅 설정 [버킷 > 속성 > 하단 > 정적 웹 호스팅] 활성화 [활성화 후 인덱스 문서, 오류 문서 파일 설정] [저장 후 > 다시 속성 확인 > 버킷 웹사이트 엔드포인트 값 확인] [접근] 3. CloudFront CDN 사용[리전 : 상파울루에 있는 정적 웹 호스팅 상태] - 리전의 거리가 있는 만큼 속도가 걸림으로 CloudFront을 통해 캐시 처리해보자[Cloud Front > 배포 > 생성] [객체 압축 시 작은 용량으로 데이터를 엣지 로케이션에 전달][선택된 HTTP 방법에 따라 H..
퍼블릭과 프라이빗 구성 아키텍처 아키텍처 예시프라이빗의 리소스를 인터넷을 통해 업데이트 해야 할 경우NAT GW 를 사용하여 외부 인터넷으로 갈수 있게 합니다. SG 와 NACL[SG][NACL]인스턴스 레벨에서 운영됩니다. 서브넷 레벨에서 운영됩니다.허용 규칙만 지원허용 및 거부 규칙 지원상태 저장 : 규칙에 관계없이 반환 트래픽이 자동으로 허용됨상태 비저장 : 반환 트래픽이 규칙에 의해명시적으로 허용되어야 함트래픽 허용 여부를 결정하기 전에 모든 규칙을 평가함 인스턴스 시작 시 누군가 보안 그룹을지정하거나 , 나중에 보안 그룹을 인스턴스와연결하는 경우에만 인스턴스에 적용됨트래픽 허용 여부를 결정할 때 번호가 가장낮은 규칙부터 순서대로 규칙을 처리합니다. 연결된 서브넷의 모든 인스턴스에 자동적용됨 ( ..
AutoScaling 동적 조정과 CloudWatch 연동 1. 동적 크기 조정 정책 생성[인스턴스] > [Auto Scaling] > [해당 Auto Scaling 그룹 선택] > [동적 크기 조정 정책 생성]단계 크기 조정 : 단계별로 크기를 지정하여 조정단순 크기 조정 : 단순하게 정한 임계점에 따라 크기 조정 후 CloudWatch로 알림 2. CloudWatch 지표 생성[CloudWatch] > [경보] > [경보 생성][해당 Auto Scaling Group 선택] [지표 생성 후 임계값 정적 설정][조건 설정] [기존 ASG 생성 시 지정한 SNS Confirm 알림 수락] [CloudWatch SNS추가] [SNS 설정 과 Auto Scaling 동적 크기 조정 정책 경보 설정 후 수..
EC2 Auto Scailing 해보기 1. EC2 CPU 사용량 확인해보기[CPU 사용량 명령어]top 2. 사전에 EC2 AMI 만들기[EC2] > [인스턴스 선택] > [작업] > [이미지 및 템플릿] > [인스턴스에서 템플릿 생성] [AMI 생성][ AMI 가 사용 가능한 상태가 된 경우 해당 EC2 서버 기반으로 만든 AMI이므로 스냅샷으로 해당 EC2에 설치된 웹서버가 백업 된것을 확인할 수 있다.] 3. 생성한 AMI로 EC2 템플릿 만들기[EC2] > [인스턴스] > [시작 템플릿] [템플릿] > [이름 설정] [템플릿] > [AMI 설정] [템플릿] > [인스턴스 유형, 키 페어 설정] [서브넷의 경우, Auto Scailing 에서 설정할 예정][생성 완료] 4. Auto Scaling..
