ReasonH / springboot-web-service

Spring Boot와 AWS로 구현하는 웹 서비스
0 stars 0 forks source link
aws jpa nginx spring-boot travis-ci

스프링 부트와 AWS로 구현하는 웹 서비스 Build Status


스프링 부트와 AWS로 혼자 구현하는 웹 서비스 책을 통해 만들어보는 게시판 서비스

개발환경은 다음과 같습니다.

로컬 개발 환경

Cloud 환경

목차(구현 내용 및 과정)

  1. 인텔리제이 환경 설정
  2. 스프링 부트 테스트 코드 소개
  3. 스프링 부트 JPA 소개
  4. 머스테치 화면 구성
  5. 스프링 시큐리티 OAuth 로그인 구현
  6. AWS 서버 환경 구축 - EC2
  7. AWS DB 환경 구축 - RDS
  8. 서버 배포
  9. Travis CI 배포 자동화
  10. Nginx를 사용한 무중단 배포

9. Travis CI 배포 자동화

10. Nginx를 사용한 무중단 배포

하나의 EC2 서버에 1대의 Nginx, 2대의 스프링부트 서버 사용

운영 과정

  1. 사용자는 서비스 주소로 접속합니다. (80 혹은 433 port)
  2. 엔진엑스 사용자의 요청을 받아 현재 연결된 스프링 부트1(8081) 로 요청 전달
  3. 스프링 부트2(8082) 는 엔진엑스와 연결되지 않았기 때문에 요청받지 못함
  4. 신규 배포시 스프링 부트2에 배포
  5. 배포가 끝난 후 스프링 부트2의 정상 구동 확인
  6. 스프링 부트2가 정상 구동 중이면 Nginx가 8082를 바라보도록 함
  7. Nginx 리로드는 0.1초 이내로 완료됨

수정 사항

무중단 배포 구성 스크립트