
JMeter란 부하 테스트, 기능 동작과 성능을 측정하기 위해 제작된 JAVA 어플리케이션 오픈소스 소프트웨어입니다. JMeter는 정적 및 동적 리소스, 웹 동적 애플리케이션에서 성능을 테스트하는 데 사용할 수 있습니다. 목적 AWS EC2 에 배포한 Spring boot 웹 어플리케이션이 얼마만큼의 부하에 견딜 수 있는지 방법을 찾아보다가 JMeter 라는 애플리케이션을 알게 되었고 꽤나 괜찮다는 평이 많은것 같아 HTTP Request 부하 테스트 Tool로 사용하기로 했습니다. 다운로드 및 실행(mac) $ brew install jmeter $ open /usr/local/bin/jmeter 다운로드(windows) jmeter.apache.org/download_jmeter.cgi Apache..
문제점 새로운 프로젝트를 EC2 T2.micro로 배포했더니 2~3일 정도 지나니 뻗어버리는 문제가 생겼습니다. dump떠서 분석도 해보고 부하 테스트도 해본 끝에 메모리가 부족해 순간적인 부하를 못이기고 죽어버린다고 결론을 내렸습니다. (T3.small로 업그레이드 하고 부하 테스트를 해봤더니 장기간 버텨줌) 해결방법 가장 간단한 해결방법은 인스턴스 유형을 업그레이드 하는것이지만 SWAP을 사용해서 해결하기로 했습니다. linux swap 영역은 RAM의 용량을 모두 사용했을 때 사용되는 여유 공간으로 RAM공간이 부족 할 때 도움이 됩니다. SWAP공간은 하드디스크(SSD 포함)공간에 위치하기 때문에 RAM에 비해서는 성능이 저하됩니다. 스왑공간 할당하기 일반적으로 다음과 같이 SWAP 공간을 계산합..

spring boot 의존성 maven org.springframework.boot spring-boot-starter-thymeleaf gradle(kotlin) dependencies { ... implementation("org.springframework.boot:spring-boot-starter-thymeleaf") ... } 참고사이트 https://www.thymeleaf.org/doc/tutorials/3.0/usingthymeleaf.html Tutorial: Using Thymeleaf 1 Introducing Thymeleaf 1.1 What is Thymeleaf? Thymeleaf is a modern server-side Java template engine for both w..
Inmutable Push function immutablePush(arr, newEntry){ return [ ...arr, newEntry ] } Inmutable Pop function immutablePop(arr){ return arr.slice(0, -1) } Inmutable Unshift function immutableUnshift(arr, newEntry){ return [ newEntry, ...arr ] } Sort function immutableSort(arr, compareFunction) { return [ ...arr ].sort(compareFunction) } // or... function immutableSort(arr, compareFunction) { return..
문제 프로젝트 진행중 객체를 import 했더니 undefined가 출력되는 문제가 발생했습니다. 코드의 문제는 아닌것 같았습니다. 검색해본 결과 순환참조 때문이라고 판단이 되었습니다. 원인 1. A파일에서 B파일을 import 합니다. 2. B파일에는 C파일을 import 하라고 합니다. 3. C파일을 load하기 시작합니다. C파일에서는 A파일을 load하라고 합니다. 4. A파일은 이미 로드되었기 때문에 캐시에서 즉시반환합니다. 하지만 A파일은 아직 B파일을 import하는 코드를 완료하지 못했기때문에 undefined 값을 export 합니다. 위와같은 문제로 제대로 import 되지않고 undefined 를 불러오지않았나 생각됩니다. 순환참조 문제는 그 자체만으로는 문제가 되지 않지만 문제가 생..

1.문제점 npm 에 올라온 라이브러리를 가져다가 쓰는것은 시간을 아껴주고 생산성을 올려주지만 node 버전과의 의존성 문제로 고생할수도 있습니다. 예전에 만들었던 프로젝트를 시간이 흐른 후 최신버전의 node를 사용하는 컴퓨터에서 실행하려고 하니 버전문제로 실행을 못했습니다. 해결방법을 찾던중 nvm으로 node버전을 쉽게 변경할 수 있는방법을 찾았습니다. 2.준비 nvm을 설치하기전에 충돌을 방지하기위해 nodejs를 먼저 제거해줍니다. Program Files/nodejs 폴더도 깨끗하게 지워줍니다. 1. 제어판 - 프로그램추가제거 - nodejs 제거 1. program file/nodejs 폴더 제거 3.설치 아래 링크에서 nvm-setup.zip을 이용해서 설치했습니다. windows용 NVM..
redis 에서는 공식적으로 윈도우에서 redis 지원을 중단했습니다. microsoft에서 redis를 사용할 수 있도록 제공해주는데요 2020-10-07 일 기준 pre-release로 3.2.100이 있고 latest release로 3.0.504 가 있습니다. 다운로드 링크 : github.com/microsoftarchive/redis/releases Releases · microsoftarchive/redis Redis is an in-memory database that persists on disk. The data model is key-value, but many different kind of values are supported: Strings, Lists, Sets, Sorted ..

설치 링크 : http://isoredirect.centos.org/centos/7/isos/x86_64/ 설치는 기본으로 설치한뒤 필요한 라이브러리는 직접 설치할 예정이기때문에 minimal로 진행 CentOS-8.2.2004-x86_64-minimal.iso 다운로드한 iso는 rufus 소프트웨어를 사용해 USB에 설치 https://rufus.ie/ko/ Rufus - 간편하게 부팅 가능한 USB 드라이브 만들기 간편하게 부팅 가능한 USB 드라이브 만들기 Rufus는 USB 메모리 및 플래시 드라이브를 포맷하고 부팅할 수 있도록 만드는 도구입니다. 이 프로그램은 다음 상황에서 유용하게 사용할 수 있습니다: rufus.ie 파티션 표준파티션 선택 /boot 1024MiB swap RAM의 2배 /..