티스토리 뷰
sudo apt update
- sudo: 관리자(루트) 권한이 필요한 작업을 실행할 때 사용된다. 일반 사용자가 관리자 권한을 임시로 얻어 명령을 실행할 수 있다.
- apt: 소프트웨어 패키지를 관리하기 위한 도구로, 소프트웨어 설치, 업데이트 및 제거 등의 작업을 간편하게 수행할 수 있도록 돕는다.
- update: 시스템의 패키지 리스트를 업데이트한다.
vim
- vim은 고도로 커스터마이징 가능한 텍스트 에디터로, 다양한 프로그래밍 작업에 널리 사용된다. 주로 키보드만으로 작업을 수행할 수 있게 설계되었으며, 다양한 모드(삽입, 명령, 시각적 모드 등)를 통해 효율적으로 텍스트 편집 작업을 할 수 있다.
- vim application.yml 명령어는 application.yml 이라는 이름의 파일을 Vim 텍스트 에디터로 열기 위한 명령이다. 이 명령을 통해 사용자는 리눅스 또는 유닉스 시스템에서 application.yml 파일을 편집할 수 있다.
nohup java -jar spring-0.0.1-SNAPSHOT.jar &
- nohup: "no hangup"의 약자로, 사용자가 로그아웃하거나 터미널 세션이 종료되어도 프로세스가 종료되지 않고 계속 실행되게 하는 유닉스 명령어이다.
- java -jar: JAR 파일을 Java로 실행하는 명령이다.
- &: 명령을 백그라운드에서 실행하도록 하는 쉘의 기능이다.
ps-ef | grep java
- ps -ef: 'ps' 명령은 "process status"의 약자로, 시스템에서 실행 중인 프로세스의 상태를 보여준다. '-ef' 옵션은 모든 사용자의 프로세스를 전체 형식으로 표시한다.
- | grep java: '|'는 'ps -ef' 명령의 출력을 'grep' 명령으로 전달한다. 'grep'은 텍스트 검색 유틸리티로, 여기서는 'java'라는 문자열이 포함된 줄만 선택하여 출력한다.
카나리(Canary) 배포
- 카나리(Canary)의 어원: Canary는 카나리아라는 새에서 유래되었다. 카나리아는 유독가스에 굉장히 민감한 동물로 석탄 광산에서 유독가스 누출의 위험을 미리 감지하기 위한 용도로 사용되어왔다.
- 카나리 배포: 카나리 배포는 위험을 빠르게 감지할 수 있는 배포 전략이다. 카나리 배포는 새로운 소프트웨어 버전을 점진적으로 일부 사용자에게만 먼저 제공하는 방식으로, 전체 사용자 기반에 배포하기 전에 새 버전의 안정성과 기능성을 검증할 수 있다.
- 목적: 이 배포 방식의 목적은 새 소프트웨어 업데이트가 유발할 수 있는 리스크를 최소화하면서, 동시에 버그나 성능 문제를 초기 단계에서 식별하고 수정할 수 있게 하는 것이다.
카나리 배포의 주요 단계
- 배포 준비: 새 버전의 소프트웨어를 준비하고, 기존 버전과 동시에 운영될 수 있도록 환경을 구성한다.
- 소규모 배포: 새 버전을 선택된 소수의 사용자(일명 카나리 사용자)에게만 배포한다. 이 사용자 그룹은 전체 트래픽의 작은 비율을 차지하며, 다양한 사용 사례를 대표할 수 있어야 한다.
- 모니터링 및 평가: 카나리 버전에서의 성능을 모니터링하고, 오류 로그, 사용자 피드백, 시스템 메트릭스 등을 분석하여 새 버전의 안정성을 평가한다.
- 확장 또는 롤백: 초기 평가에서 문제가 발견되지 않으면, 점진적으로 더 많은 사용자에게 새 버전을 배포한다. 문제가 발견되면, 즉시 롤백하여 사용자에게 영향을 주기 전에 원인을 조사하고 수정한다.
- 장점:
- 위험 감소: 소프트웨어 업데이트로 인한 위험을 최소화하면서 신규 버전을 안전하게 테스트할 수 있다.
- 신속한 피드백: 실제 사용 환경에서 직접 새 버전의 성능과 안정성을 테스트하고, 사용자와 시스템의 직접적인 피드백을 얻을 수 있다.
- 유연한 롤백: 문제가 발견될 경우 새 버전을 신속하게 롤백할 수 있어, 사용자 경험에 미치는 부정적인 영향을 최소화할 수 있다.
'Spring' 카테고리의 다른 글
[SPRING] 로깅에 AOP 적용해보기 (0) | 2024.06.01 |
---|---|
[SPRING] 로깅에 대해서 알아보자 (0) | 2024.05.25 |
스프링 키워드 모음 #3 (0) | 2024.04.26 |
[SPRING]자바 ORM 표준 JPA 프로그래밍 섹션4 (엔티티 매핑) (0) | 2024.04.25 |
[SPRING]자바 ORM 표준 JPA 프로그래밍 섹션3 (영속성 관리 - 내부 동작 방식) (2) | 2024.04.25 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- EnumType.ORDINAL
- 자바
- 스프링
- 다이나믹 프로그래밍
- SQL
- 영속
- elasticsearch
- 백준 파이썬
- 파이썬
- DP
- 회원탈퇴
- 북마크
- 자바 스프링
- 지연로딩
- 스프링부트
- 스프링 북마크
- SQLD
- 스프링 커뮤니티
- 로깅
- 비영속
- JPA
- 로그아웃
- 인텔리제이
- 프론트엔드
- 웹 MVC
- SQL 레벨업
- 웹MVC
- 백준
- 커뮤니티
- 준영속
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
글 보관함