만쥬의 개발일기
article thumbnail
[Linux] - wget의 개념과 사용 예시
🛠️TOOL/📄Linux 2023. 12. 14. 15:45

wget의 개념 wget은 webget의 줄임말 HTTP, HTTPS, FTP와 FTPS 등 가장 널리 사용되는 인터넷 프로토콜을 이용해 파일을 검색하기 위한 자유 소프트웨어 패키지 상호작용 하지 않는 (non-interactive) 커맨드라인 툴이기 때문에 스크립트, cron 작업, X-Windows(GUI) 지원이 없는 터미널에서 쉽게 호출됨 특징 REST와 RANGE를 사용해서 중단된 다운로드 재개 가능 파일 이름 와일드카드를 사용하고, 디렉토리를 재귀적으로 미러링 가능 Windows, 대부분의 UNIX-like OS에서 사용 가능 HTTP 프록시, 쿠키와 영속적인 커넥션 지원 미러링할 때 문서를 다시 다운로드 해야 하는지 여부 결정을 위해 로컬 파일 타임스탬프 사용 재귀적 미러링이란? 특정 디렉토..

article thumbnail
[UML] - 유스케이스 다이어그램(Usecase Diagram)이란?
카테고리 없음 2023. 12. 12. 19:21

유스케이스 다이어그램이란? 유스케이스 다이어그램은 UML 13가지 다이어그램 중 한가지로, 위 그림처럼 시스템과 사용자의 상호작용을 다이어그램으로 표현한 것으로, 사용자의 관점에서 시스템의 서비스, 기능, 외부와의 관계에 대해서 다이어그램으로 표현한 것을 말한다. 사용자(액터)가 시스템 내부에 있는 기능 중에 어떤 기능을 사용할 수 있는지를 나타내어 사용자와 시스템 사이의 관계를 간략하게 표현할 수 있는 장점이 있다. 유스케이스 다이어그램 구성요소 유스케이스 다이어그램은 크게 다음과 같은 요소로 구성되어 있다. 시스템 액터 유스케이스 관계 시스템(System Scope) 현재 개발할 프로그램을 나타낸다. 프라이머리 액터와 세컨더리 액터 사이의 사각형으로 표기한다. 액터(actor) 시스템 외부에 존재하며..

article thumbnail
[UML] - UML과 13가지 다이어그램

UML이란? UML이란 Unified Modeling Language의 약자로 1997년 OMG에서 표준으로 채택한 통합모델링언어 이다. 즉, 어떠한 모델을 만드는 표준언어로서, 모델이란 것은 제품을 미리 검증하고, 설계하는 과정에서 필요하다. 소프트웨어에서의 모델은 건축, 항공 등의 모델과는 조금 다른 면이 있는데, 해당 분야는 직접 만드는 것과 설계 사이에는 엄청난 비용의 차이가 있다. 하지만 UML 다이어그램을 그리고 모델을 만드는 일은 오히려 개발보다 비용이 많이 들 수도 있기 때문에, UML은 다음과 같을 때 사용한다. 시험해 볼 구체적인 것이 있을 때 코드로 시험하는 것보다 UML로 시험해 보는 쪽이 비용이 덜 들 때 그리고 이러한 목적으로 UML을 사용하는 유형에는 다음이 있다. 다른 사람들..

[Linux] - nohup 사용법과 다양한 활용 방법
🛠️TOOL/📄Linux 2023. 11. 29. 23:34

nohup이란? "no hangups"라는 의미로 리눅스, 유닉스에서 명령어나 쉘 스크립트 파일(*. sh)을 데몬 형태로 실행시키는 프로그램이다. 데몬 형태로 실행시킨다는 것은, UI 없이 시스템 백그라운드에서 동작하는 프로그램을 지칭한다. nohup을 사용하는 이유 nohup은 터미널이나 세션이 종료된 후에도 해당 프로세스가 종료되지 않고 지속적으로 동작하게 해준다. 즉 리소스를 끊지 않는 이상, (로컬의 컴퓨터를 종료하거나 인스턴스를 종료하거나 프로세스를 죽이거나 등등) 계속해서 프로세스는 동작하게 된다. 오랜 시간이 걸리는 스크립트나, 항상 켜두어야 하는 서버 등을 배포할 때 주로 사용한다. 사용방법은 프로그램 실행어 앞에 nohup을 붙여주면 되고, 실행 시 실행한 경로에 "nohup.out"이..

[git] - git pull 할 때 fatal: Need to specify how to reconcile divergent branches. 에러
🛠️TOOL/🐈‍⬛GIT 2023. 11. 29. 21:26

git pull을 할때 git 최신 버전의 경우 다음과 같이 merge 전략을 어떻게 해야할 지 설정해달라는 문구가 뜨곤 한다. hint: You have divergent branches and need to specify how to reconcile them. hint: You can do so by running one of the following commands sometime before hint: your next pull: hint: hint: git config pull.rebase false # merge hint: git config pull.rebase true # rebase hint: git config pull.ff only # fast-forward only hint: hi..

article thumbnail
[AWS] - EC2 프리티어 사용시 메모리 부족 현상 해결
🛠️TOOL/🔶AWS 2023. 11. 29. 21:19

개요 개발 연습을 할 때 EC2 프리티어 만큼 좋은게 없다. 구글 계정을 만들기는 쉬운데, 구글 계정을 만들 때마다 인스턴스를 하나씩 무료로 쓸 수 있기 때문이다. 그러나 메모리 때문에 아쉬울 때가 종종 있다. 일례로 이전에 리액트 웹 프로젝트를 배포할 때, 리액트를 빌드하지 못하고 서버가 멈춰 원인이 뭔지 엄청 헤맸던 기억이 있다.. 이번에도 스프링 부트 프로젝트를 진행하며 gradle을 통해 빌드를 시도했는데, 또 서버가 터져버리고 말았다. 그래서 리눅스의 SWAP 메모리를 통해 문제를 해결해보기로 하자. 일반적으로 SWAP Space는 다음과 같이 권장된다. 물리적 RAM의 양 권장 스왑 공간 RAM 2GB 이하 RAM 용량의 2배(최소 32MB) RAM 2GB 초과, 32GB 미만 4GB + (R..

[Spring] - @ResponseEntity의 이해와 사용 방법

ResponseEntity란?ResponseEntity를 설명하기 전에, 먼저 HttpEntity를 알아야한다.HttpEntity란 HTTP 요청(Request) 또는 응답(Response)에 해당하는 HttpHeader와 HttpBody를 포함하는 클래스이다.  그리고 HttpEntity 클래스를 상속받아 구현한 클래스가 RequestEntity, ResponseEntity 클래스이다. ResponseEntity는 사용자의 HttpRequest에 대한 응답 데이터를 포함하는 클래스이다. 따라서 HttpStatus, HttpHeaders, HttpBody를 포함한다.  ResponseEntity의 생성자를 보면 this( )를 통해서 매개변수가 3개인 생성자를 호출해 결국엔 아래 보이는 매개변수가 3개인..

article thumbnail
[Spring] - @RestControllerAdvice를 이용해서 예외처리 AOP 처리하기

개발을 하다보면 예외처리는 필수 불가결 적이다. 그리고 예외처리는 한 곳에서만 하는 것이 아닌, 내 코드 모든 곳에서 발생하는 AOP이다. 따라서 공통적으로 처리해야만 하는데, 이를 도와주는 어노테이션이 있다. @ControllerAdvice vs @RestControllerAdvice @ControllerAdvice란 @ExceptionHandler, @ModelAttribute, @InitBinder 가 적용된 메서드들을 AOP를 적용해 컨트롤러 단에 적용하기 위해 고안된 어노테이션이다. 클래스에 선언하게 되면, 모든 @Controller에 대한 전역적으로 발생하는 예외를 처리 가능하다. 또한 내부적으로 @Component가 선언되어 있어 빈으로 관리된다. @RestControllerAdvice란 @..