[TAVE 17기] Spring Boot 백엔드 스터디 2주차

YJ·2026년 3월 30일

우리 팀은 한조각님의 강의를 듣고 각자 맡은 부분을 좀 더 집중적으로 공부해오는 시간을 가졌다!

강의는 아래 참고 ,,
Spring Boot, AWS로 백엔드 서비스 한 사이클 완성하기


강의가 실습 위주인 것 같아 좀 더 궁금한 부분을 찾아보았다!
2주차 스터디는 Docker와 AWS !
우선 왜 하지?를 이해하지 못하면 살짝 . . 엥? 싶어져서 이번 스터디는 Why???? 위주로 찾아보았다.

내가 맡은 부분은 AWS였고, 가장 먼저 왜 백엔드가 AWS를 공부해야 되는지에 대해 의문을 품게 되었다.

🤔 백엔드가 왜 AWS를 공부해야 하나요

  1. AWS를 사용해 백엔드 개발자는 서버 구매, 유지 관리의 필요성 없이 애플리케이션을 신속하게 배포하고 관리할 수 있다!

    ⇒ 빠른 확장성, 높은 가용성, 보안 등 제공

  2. 무중단 배포와 확장성 확보를 위한 전략 수립

    ⇒ 가용성과 성능 향상

ex. AWS ELB Auto Scaling 기능 : 트래픽의 변동에 따라 자동으로 서버 인스턴스의 수를 조절, 균형있게 트래픽을 분산 시킴

ex. AWS CodeDeploy 서비스 : 코드 변경 사항을 자동으로 배포할 수 있음 → 코드 업데이트 과정에서 다운타임 없이 애플리케이션 최신 상태 유지

결론 : 비즈니스 요구사항에 다라 애플리케이션의 규모를 탄력적으로 조절 & 지속적인 배포 프로세스 구축 가능

 

참고자료

https://f-lab.kr/insight/aws-usage-guide-for-backend-developers


그리고 두 번째,
AWS의 구조 및 구성요소에 대해 알아보았다! 무작정 코드를 치는 것보단 이렇게 이해하고 넘어가고 싶은 마음 ,, 😎

AWS 기본 구조

배포

다른 사용자들이 인터넷을 통해서 사용할 수 있게 만드는 것
ex. 사용자 → 인터넷 → 서버

  • 자신 컴퓨터: localhost 로 테스트 개발 → 다른 컴퓨터에서 접근이 불가
  • 배포 시: 고유의 주소 부여를 받게 됨 → 다른 컴퓨터에서 그 주소로 접속할 수 있다!

Amazon EC2

컴퓨터를 빌려서 원격으로 접속해 사용하는 서비스
= 하나의 컴퓨터

1. 왜 배워요?

내 컴퓨터로 서버를 배포하면 24시간동안 컴퓨터를 켜놔야 함, 보안 위험 존재

⇒ 내 컴퓨터가 아닌 AWS EC2라는 컴퓨터를 빌려서 사용하자!

2. 현업에서 써요?

실제 서버 배포 시 사용, 백엔드 서버 배포 시 EC2에 서버 배포해 사용

cf. 프론트엔드 배포는 vercel, netlify, AWS S3 주로 사용!

  • 클라우드 = 빌려 쓰기
  • 클라우드 컴퓨팅 = 컴퓨팅 빌려 쓰기
  • EC2 = 컴퓨팅을 빌려 쓰는 서비스

⭐ AWS에서 제일 중요한 서비스!

리전(Region)

인프라를 지리적으로 나누어 배포한 각각의 데이터 센터

ex. EC2를 통해서 빌려 쓸 수 있는 컴퓨터들이 위치한 곳

애플리케이션의 주된 사용자들의 위치와 지리적으로 가까운 리전을 선택하는 것이 포인트!
ex. 한국 유저들이 주로 사용 → 아시아 태평양(서울) 선택

IP & Port

IP

네트워크 상에서의 특정 컴퓨터를 가리키는 주소
13.250.15.032

Port

한 컴퓨터 내에서 실행되고 있는 특정 프로그램의 주소
13.250.15.032:3030:3000

+) 브라우저 창에 포트 번호를 입력하지 않는 이유?

ex. naver.com:3030이라고 쓰지 않고 naver.com이라고만 써도 이동됨

⇒ 브라우저는 기본적으로 80번 포트로 통신 설정하기 때문!

+) 잘 알려진 포트(well-known Port)


  • 0~65,535번까지 사용
  • 0~1,023번까지는 주요 통신을 위한 규약에 따라 이미 정해져있다!
  • 아래는 정해져있는 포트 중 중요한 것
    • 22번(SSH): 원격 접속을 위한 포트 번호 → EC2 인스턴스 연결 시
    • 80번(HTTP) : HTTP로 통신을 할 때 사용
    • 443(HTTPS) : HTTP로 통신을 할 때 사용

⇒ but, 강제는 아니다!

AWS IAM

AWS 서비스와 서비스 리소스에 대한 액세스를 안전하게 관리해주는 서비스
AWS의 보안과 관리를 담당!

VPC

가상으로 존재하는 데이터 센터
→ 원하는대로 사설망 구축 가능!

EC2 등이 실제로 실행되는 부분

AMAZON S3

객체 스토리지 서비스(파일 보관만 가능)

  • 강력한 내구성
  • 대규모 데이터 저장하고 관리하는 데 이상적

AMAZON RDS

관계형 데이터베이스를 서비스화 시킨 서비스
⇒ MySQL, MariaDB 등 여러 관계형 데이터베이스 서비스를 AWS로부터 비려서 사용하는 형태

Q. 왜 사용하나요?

로컬 환경에서 개발할 때는 로컬 환경에 설치된 MySQL같은 DB를 연결해서 사용
but, 서버 배포 후 서버가 내 컴퓨터에 설치된 MySQL과 연결할 수 없음!
⇒ DB도 외부 인터넷에서 접근할 수 있게 같이 배포해야 됨

= AWS RDS라는 데이터베이스를 빌려서 사용

 

참고 영상: https://youtu.be/LU8x1UEcPFA?si=2qatHX1FJ40SpFMD

마무리

솔직히 인프라 공부 하는 것도 아니고 AWS를 왜 배우지..? 에 대한 의문이 가장 컸는데 어느정도 이해가 되었다.
근데 AWS 세팅 너무 어려워 스터디원 중에 원인도 모른 채 과금되고 있다는 안타까운 소식도 들어 (..) 더욱 조심히 다뤄야겠다는 생각이 들었다. 그럼 어렵게라도 만들지 말던가!!! 화는 그만 내고 이제 3주차 스터디를 준비하러 가야겠다!

0개의 댓글