
alias로 git log 덜 귀찮게 쓰기
git config --global alias.gol "log --oneline --decorate --graph" 위의 명령어를 bash에서 실행해주면 .gitconfig에 alias가 생성된다. 굿~
git config --global alias.gol "log --oneline --decorate --graph" 위의 명령어를 bash에서 실행해주면 .gitconfig에 alias가 생성된다. 굿~
ScriptFailed: Script at specified location: xxx run as user ubuntu failed with exit code 126 왜 이 오류가 뜨는지 전혀 모르겠어서 파일과 폴더를 여러번 지우고 새로 만들고를 반복했지만 해결되지 않았다. 디렉토리의 위치도 틀리지 않았고 디렉토리와 파일의 이름도 틀린게 없는데 자꾸 오류가 떠서 고민하다가 사람들에게 도움을 구했다. 그 중 사람들의 문제해결을 자주 해주시는 동기분께서 대답을 주셨는데, 바로 해결돼버렸다. 오.. 원인은 윈도우 환경에서 만든 파일을 linux에서 실행했기 때문이다. OS 간의 개행 방식이 다르기 때문에 각 OS의 방법대로 개행문자가 변환되지 않으면 파일이 깨지는 것 같다...! 위와 같이 vim으로 문제가 ..
Auto Scaling CPU, RAM, 네트워크 트래픽 등 시스템 자원들의 값을 모니터링해서 서버의 크기를 자동조절 해주는 서비스 서버의 부하가 심해져 제대로 된 서비스를 제공하지 못하는 순간이 왔을 때 서버를 증설하고 연결 반대로 네트워크 트래픽이 줄어들 경우 리소스를 감소시키기도 함(Scale-In) 장점 Dynamic Scaling(동적 스케일링) 사용자의 요구 수준에 따라 리소스를 동적으로 스케일링 할 수 있다. Scale-Up을 할 수 있는 서버의 수는 무제한이고, 필요에 따라 즉시 scale-up이 가능하다. Load Balancing(로드 밸런싱) Auto Scaling과 Load Balancing을 함께 사용하면, 다수의 EC2 인스턴스에게 사용자가 정의한 규칙에 따라 워크로드를 분배할 ..
Scale-out 방식을 통해 과부하 문제를 대처하기로 했다면, Load Balancing이 꼭 필요하다. Load Balancing - 서버가 처리해야 할 요청을 여러 대의 서버로 나누어 처리하는 것 - 한 대의 서버로 부하가 집중되지 않게 트래픽을 관리해서 서버들이 과부하 걸리지 않게 함 - Load Balancing을 처리하는 역할을 Load Balancer가 맡음 https://aws.amazon.com/ko/what-is/load-balancing/ 로드 밸런싱이란 무엇인가요? 로드 밸런싱 설명 - AWS 로드 밸런싱은 애플리케이션을 지원하는 리소스 풀 전체에 네트워크 트래픽을 균등하게 배포하는 방법입니다. 최신 애플리케이션은 수백만 명의 사용자를 동시에 처리하고 정확한 텍스트, 비 aws.am..
한 서비스에 너무 많은 사용자(클라이언트)가 접속하게 되면, 서버에는 과부하가 오기 마련이다. 과부하로 인해 서버가 원할한 서비스를 제공하지 못하는 경우, 이를 해결하는 방법은 크게 두가지가 있다. Scale-up Scale-out Scale-up(수직확장) 물리적으로 서버의 사양을 높이는 하드웨어적 방법 서버의 수가 늘어나는 것이 아니기에 프로그램 구현의 변화가 필요없음 성능 확장에 한계가 있음 성능 증가에 따른 비용 증가폭이 큼 사양을 늘린만큼 클라이언트의 요청이 다시 늘어날 경우 과부하 재발생 Scale-out(수평확장) 서버의 개수를 늘려 한 개의 서버에 주는 부하를 줄이는 방법 여러 서버로 부하를 나눠주는 대역이 필요(Load Balancer) 이론상 지속적으로 확장 가능 비교적 저렴한 비용으로..
Proxy Server 클라이언트가 서버가 소통할 때, 서버에 바로 접근하지 않고 자신을 통해 간접적으로 서버에 접근할 수 있도록 해주는 컴퓨터 시스템 또는 응용 프로그램이다. 사용 시 개인정보 보호, 캐시 사용으로 인한 속도 향상 등의 장점이 있다. Proxy server의 위치에 따라 Forward와 Reverse로 나뉜다. Forward Proxy Client가 Server에 요청을 보내면 Forward Proxy Server가 요청을 받고 Server에게 전달해주고, 응답 역시 Forward Proxy Server를 통해 Client에게 전달된다. 캐싱을 통한 빠른 서비스 이용 클라이언트는 서비스를 제공하는 서버가 아닌 프록시 서버와 소통하게 된다. 서버로 여러 클라이언트가 동일한 요청을 보낼 수..
github repo와 spring initializr로 임시 프로젝트를 만들어서 연결한 뒤, 고대로 github actions를 생성했다. 별 문제없이 작동할 줄 알았는데 이게 웬걸!! 빌드에서 오류가 나버렸다. 처음에는 인텔리제이의 터미널에서, sudo git update-index --chmod=+x gradlew git commit -m " " 이렇게 파일의 권한을 변경하고 커밋해줬다. git log에서 권한이 변경된 걸 확인하고 다시 build를 시도했지만 똑같이 실패했다. 다음으로는 gradle.yml 파일 자체를 수정했다. gradle.yml 파일 자체에서 gradlew의 권한을 설정해 줬다. - name: Grant execute permission for gradlew run: chmod..
배포 자동화 - 간단한 작업을 통해 전체 배포 과정을 진행할 수 있게 하는 것 - 매번 수동으로 하는 배포 과정을 자동화함으로써 시간 절약 가능 - Human Error 방지(수동 배포 중 특정 과정을 생략해서 오류가 발생하는 등의 문제) 배포 자동화 Pipeline Stages: 파이프라인의 전체 과정을 여러 단계로 분리한 것 Actions: 파이프라인 안에서 순차적으로 실행되는 stage에서 수행하는 주어진 작업들 Pipeline을 여러 단계(stage)로 분리할 때 대표적으로 위의 그림과 같이 세 단계로 나눌 수 있다. (꼭 세 단계로 나누어지는 것이 아닌, 상황과 필요에 따라 세분화되거나 간소화될 수 있음) Source stage 원격 저장소에 관리되고 있는 소스코드에 변경사항이 일어날 경우, 이..