목록photocard backend server 개발일기 (41)
개발일기

캐시를 왜 쓰는건가요?캐시가 무엇이고 왜 쓰는지 먼저 알아보기..! 위키피디아에서는 아래와 같이 정의 캐시(cache, 문화어: 캐쉬, 고속완충기, 고속완충기억기)는 컴퓨터 과학에서 데이터나 값을 미리 복사해 놓는 임시 장소를 가리킨다. 캐시는 캐시의 접근 시간에 비해 미가공 데이터 또는 1차 데이터(raw data or primary data)에 접근하는 시간이 오래 걸리는 경우나 값을 다시 계산하는 시간을 절약하고 싶은 경우에 사용한다. 쉽게 말해, 자주 사용하는 데이터를 가까운 어딘가에 저장해두었다가, 필요할 때 빠르게 꺼내보기 위한 기술이다. Java CAS 나 volatile 키워드를 찾아보면 OS까지 내려갈 필요도 없이 자바 언어에서도 이미 캐시가 적용되고 있음을 알 수 있다. 웹 어플리케..
swagger-ui 2.3.0 버전 build.gradle에 추가해준다. implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.3.0' application.yml springdoc: swagger-ui: groups-order: DESC tags-sorter: alpha operations-sorter: method disable-swagger-default-url: true display-request-duration: true해당 버전으로 설정해주었다. SwaggerConfigV3.javapackage com.realworld.v1.global.config.swagger;import io.swagge..

https://github.com/scouter-project/scouter/releases/ Releases · scouter-project/scouterScouter is an open source APM (Application Performance Management) tool. - scouter-project/scoutergithub.com 해당 깃허브에서 scouter-all-2.17.1 , scouter.client.product-macosx.cocoa.x86_64.tar.gz 다운받는다. 맥북이기에 윈도우면 win32받으면 됩니다. 맥북의 경우 실행이 안되는데 scouter-all 압축을 풀어준 후, server 폴더로 가서 ./startup.sh해당 명령어를 입력해준다. 그 후, s..
TPS란 (처리량)- TPS "Transactions Per Second"의 약어로, "초당 처리가능한 트랜잭션의 수"- TPS가 100이라면 초당 처리 할 수 있는 작업이 100이다. 라고 생각하면 됨 - TPS 수치가 높을 수록 짧은 시간에 많은 작업을 처리 할 수 있다고 보면 된다. Vuser란- 가상 사용자(Virtual User)- vUser10은 가상 사용자(Virtual User)가 10명을 나타낸다. 이것은 부하테스트 시나리오에서 10명의 가상 사용자가 동시 시스템 또는 애플리케이션에서 동작하고 있다는 의미이다. TPS: 평균 TPSPeak TPS: 최고 TPSMean Test Time : 평균 테스트 시간Executed Tests: 테스트 실행 횟수Successful Tests: ..

https://github.com/naver/ngrinder/releases Releases · naver/ngrinderenterprise level performance testing solution. Contribute to naver/ngrinder development by creating an account on GitHub.github.comngrinder-controller-3.5.9-p1.war 다운로드 받는다. java -Djava.io.tmpdir=/Users/han/ngrinder -jar ngrinder-controller-3.5.9-p1.war --port=8300 http://localhost:8300/login => 해당 페이지로 접근한다. id/password -> a..

성공 사진 먼저 보여드리고 시작하겠습니다..! 우선 스프링 부트에서 설정을 시작해줍니다. build.gradle implementation 'io.micrometer:micrometer-registry-prometheus' implementation 'org.springframework.boot:spring-boot-starter-actuator'두개를 추가해줍니다. 기존의 스트링 부트 프로젝트!! application.yml 파일에 아래를 추가해줍니다. server: port: 8080 servlet: context-path: /apimanagement: health: mail: enabled: false endpoints: web: expo..

🤗 정적 코드 분석 vs 동적 코드 분석정적 코드 분석은 코드가 실행 되기 전 소스 코드 또는 바이너리 코드를 분석해 코드를 직접 실행하지 않고 코드의 구조, 문법, 스타일, 잠재적인 버그, 코드 복잡도, 보안 취약점등을 분석한다. 정적 코드 분석은 코드 실행 없이 오류를 조기에 발견할 수 있는 장점이 있으나, 코드의 실제 실행 환경에서 발생하는 런타임 오류나 메모리 누수와 같은 동적인 문제는 감지할 수 없다는 단점 동적 코드 분석은 코드를 실제로 실행하는 동안 수행된다. 프로그램을 실행하면서 그 동작을 모니터링하고, 런타임에서 발생할 수 있는 메모리 누수, 성능 문제 , 예외 처리, 보안 문제 등을 분석 정적 코드 분석 SonarQube를 도입하는 이유는 코드의 구조, 문법, 스타일 등등을 확인하..

🔥 우선적으로 public IP를 구성하면 IPv4에 대한 요금이 지출되기에 privateIP로 선택해주었다. 완벽하게 RDS를 무료로 쓰기 위해서는 해당 방식으로 구현해야한다. 지금부터 무료로 사용하기 달려가보자..! 🔥 우선 public ip로 하던 것을 퍼블릭 액세스 불가능 선택 해당 RDS와 연결할 EC2 선택 ..! 이제부터 본격적으로 스프링에서 어떤방식으로 public IP를 구성하지 않으면 작성해야되는지 알아보자..! spring: config: activate: on-profile: "local" datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://127.0.0..