AWS(10)
-
서버 부하테스트 환경 구축 참고
릴리즈전에 db서버 부하테스트도 해줘야돼?ChatGPT의 말:응, 릴리즈 전에 DB 서버 부하 테스트는 꼭 해주는 게 좋아 👍왜 필요한가?실제 트래픽 대비개발·테스트 환경에서는 동시 접속자 수나 대량 쿼리 부하가 적어서 병목을 발견하기 어려워. 릴리즈 전에 부하 테스트를 하면 예상 트래픽을 미리 흉내내 볼 수 있어.성능 병목 파악느린 쿼리 (Full Scan, 인덱스 미스 등)Connection pool 한계Deadlock 발생 여부CPU/메모리/디스크 IO 병목이런 것들을 미리 확인할 수 있음.스케일링/리소스 계획DB 인스턴스 스펙이 충분한지, 읽기/쓰기 분리나 캐시(Redis 등)를 도입해야 하는지 판단 근거가 됨.어떻게 하는 게 좋은가?쿼리 단위 테스트: 주요 API에서 실행되는 SQL의 실행 계..
2025.09.29 -
AWS github 연동 CI/CD 구축 서비스 종류
CI/CD 파이프라인을 구성해서 Git → AWS → S3 → CloudFront로 이어지는 자동 빌드 & 배포 흐름이에요.AWS에서는 이미 그걸 지원하는 서비스들이 있어요.🔑 주요 방법1. AWS Amplify Hosting깃허브, GitLab, Bitbucket, CodeCommit을 직접 연결.브랜치에 push → Amplify가 소스 받아서 자동 빌드 → S3에 올리고 → CloudFront 배포까지 자동으로 처리.프론트엔드 (React, Vue, Next.js, CRA, Gatsby 등) 프로젝트에 최적화.빠르게 적용하려면 이게 제일 간단합니다.2. AWS CodePipeline + CodeBuild + S3 + CloudFront깃 소스 저장소(GitHub/CodeCommit)에 push 이..
2025.09.03 -
글로벌 서비스에 DB 구축하기
몇일 전 사전 미팅을 간 베트남 직원이 회사 서비스 프로그램을 테스트하던중 너무 느리다는 문의가 들어왔다.분명히 내가 테스트했을때나 다른 직원이 테스트했을때는 속도에는 문제가 없었는데 베트남에서 테스트 하면 상당히 느렸다.현재 회사 서비스의 프로그램 서버는 AWS로 구축했으며 서울리전으로 세팅하였다.서울리전에 구축한 AWS의 서버의 물리적 위치가 베트남과 멀어서 속도 이슈가 발생한거 같았다. 찾아보니 AWS route53을 통하여 리전마다 세팅한 WAS와 로드벨런서에 도메인을 연결하고 지리전 위치에 따라서 트래픽 분배가 가능하다고 한다. 일단 AWS에서 지원하는 리전중에 베트남과 가장 가까운 리전은 싱가포르 리전이라고 하기에 AWS ami서비스로 서울 리전의 EC2 이미지를 생성하여 싱가포르 리전에..
2025.06.17 -
AWS 서버 지리적 기반 트래픽 분배하는 법
AWS에서는 지역(리전)에 따라 트래픽을 자동으로 분배하는 기능을 제공합니다. 이를 구현하기 위해서는 Amazon Route 53의 지리 기반 라우팅 또는 지리적 근접성 라우팅 기능을 사용할 수 있습니다.✅ 목적사용자가 **어느 지역(국가/대륙 등)**에서 접속하느냐에 따라 가까운 리전의 서버로 라우팅되도록 설정🔧 AWS에서 가능한 방법1. Route 53 – 지리 기반 라우팅 (Geolocation Routing)**사용자의 위치(IP 기반)**에 따라 라우팅예:한국 → 서울 리전미국 → 오레곤 리전국가 또는 대륙 단위로 설정 가능🛠 설정 방법:Route 53에서 호스팅 영역 생성레코드 생성 시:라우팅 정책: 지리 기반 (Geolocation)국가 또는 대륙 지정각 리전에 위치한 서버의 ELB 또는..
2025.06.16 -
로컬 스프링부트 프로젝트 서버 배포 방법
스프링부트 프로젝트를 로컬에서 개발하고, 깃허브로 형상관리하며, AWS EC2에 배포하는 효율적이고 안정적인 방법을 안내해 드릴게요.1. EC2 서버 준비원하는 OS (예: Amazon Linux 2, Ubuntu 20xx)로 EC2 인스턴스 생성보안 그룹에서 HTTP(80), HTTPS(443), SSH(22), 필요시 포트 8080(또는 애플리케이션 포트) 오픈SSH 키 페어 생성 및 로컬에 저장2. EC2에 필요한 환경 설치Java 설치 (스프링부트는 JDK 필요, 보통 OpenJDK 11 이상 권장)Git 설치 (코드 내려받기 용)(선택) Nginx 설치 및 리버스 프록시 설정(선택) 방화벽(UFW 등) 설정예, Amazon Linux 2 기준:sudo yum update -ysudo yum in..
2025.06.01 -
AWS S3 버킷생성후 node js와 연동하기
기존 개발된 파일업로드 기능이 순전히 프로젝트 안에 files이라는 디렉토리에 저장되는 형태였다.EC2자체가 스토리지 역할이 주가 아니기 때문에 서버의 파일 리소스는 S3를 통하여 관리하기로 했다. 일단 AWS S3탭에서 버킷을 생성한다.옵션들은 기본으로 설정되어 있는 그대로 적용하고 버킷명만 지정해주었다. 이후 파일을 업로드해보고 외부에서 리소스 경로url에 접속이 되는지 확인해봤다.초기 설정 그대로 모든 퍼블릭 액세스 차단으로 적용했기 때문에 외부에서 접속은 안되는 상태였다. 내가 적용하고 싶은 방법은 외부에서 리소스를 다운로드 가능하며, 현재 운행하고 있는 서비스의 WAS나, 웹사이트에서만 리소스를 업로드할수 있도록 하고 싶었다. IAM S3 전용 사용자 생성 1. iam > 사용자 ..
2025.02.21