Backend/Infra

Blue/Green 무중단 배포를 진행해보자. 무중단 배포란? 예전에는 배포라고 하면 팀의 아주 큰 이벤트로 배포날을 결정해 새벽시간에 남아서 배포를 해야했습니다. 잦은 배포가 있다면 매 새벽마다 남아서 배포를 해야 했습니다. 이럴때 치명적인 문제가 발견되면 새벽에 문제 해결 후에 아침이 되면 긴급 점검을 올리고 수정을 해야 했습니다. 이렇게 배포가 서비스를 정지해야만 가능할때는 롤백조차 어렵기 때문에 고생이 많았습니다. 그래서 서비스를 정지시키지 않고 배포하는 방법을 찾기 시작했습니다. 이렇게 서비스를 정지시키지 않고 배포를 계속하는 것이 무중단 배포라고 합니다. Blue/Green 이란? 가장 간단하고 쉽게 무중단 배포를 구현할 수 있습니다. 기본적으로 릴리즈와 관련된 모든 시간을 줄이기 위한 기술입..
정적분석도구 SonarQube 정적분석도구란? 정적분석이란 프로그램의 실행 없이 코드를 분석하는 것 입니다. 비용이 추가로 들지 않으면서 코드의 품질을 검토하고, 잘못된 부분을 옳은 방향으로 고칠 수 있도록 도와주는 다양한 도구들을 말한다. 개발자의 역량 향상과 미래의 장애 발생 확률을 줄이는 역할을 한다. 잘 알고 있는 JavaScript의 ESLint나 Prettier도 정적분석도구로 불린다. 또한 테스트 커버리지를 확인할 수 있는 Jacoco도 정적분석도구라 불린다. SonarQube란? 코드를 분석하여 중복, 테스트 커버리지, 코드 복잡도, 버그, 보안 취약성 등을 리포팅 해주며 IDE, 빌드도구, CI 도구와 통합하여 사용해 분석할 수 있다. 위와 사진처럼 여러가지의 도구를 이용해 코드 품질을 ..
Github Action을 이용해 Push, PR 시 Gradle Build Test를 진행해보자. 예제코드 Github Action이란? 소프트웨어 WorkFlow를 자동화 할 수 있도록 도와준다. WorkFlow의 대표적인 예 Test Code, 배포, 자동화 스크립트, 다양한 버전에서 실행되는지 확인 등... Github Action을 이용해서 Build 진행 방법 위에서 Action 탭을 클릭한다. 위와 같이 기본 설정 WorkFlow가 존재한다. Set up this workflow를 클릭한다. # This workflow will build a Java project with Gradle # For more information see: https://help.github.com/actions..
Seyun(Marco)
'Backend/Infra' 카테고리의 글 목록