전체 글30 HttpSession을 단위 테스트하기 위한 방법 로그인 기능을 구현하기위해 단위테스트를 하려다보니 HttpSession 객체를 활용한 테스트가 필요했습니다. 방법을 모색해보니 바로 !! Mock Mock이란 실제 객체를 만들어 사용하기에 시간, 비용 등의 Cost가 높거나 혹은 객체 서로간의 의존성이 강해 구현하기 힘들 경우 가짜 객체를 만들어 사용하는 방법입니다. 출처: https://www.crocus.co.kr/1555 [Crocus] MockHttpSession 을 사용했습니다. MockHttpSession 을 사용한 테스트 코드 package com.flab.doorrush.domain.user; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Ma.. 2021. 11. 20. 인프라를 업그레이드하는 방법: 스케일 업(Scale-up)과 스케일 아웃(Scale-out) 1. Scale-up 기존 서버를 하드웨어적으로 높은 사양으로 업그레이드 시키는 방법입니다. 수직 스케일링(vertical scaling) 이라고도 합니다. 예를 들면, 서버에 디스크를 추가하거나 CPU나 메모리를 업그레이드시키는 방법이 있습니다. 문제점 - 스토리지 컨트롤러의 확장성의 한계의 문제가 있고, 성능 그리고 용량 확장 제한이 있습니다. - 서버가 한대로 운영되기 때문에 부하가 집중되어 장애영향도가 큽니다. - 스케일업을 할수록 기존 하드웨어의 냉각, 공간, 전력공급 등의 문제가 발생할 수 있습니다. - 하드웨어 허용 범위 내에서만 확장이 가능하기 때문에 그 이상으로 업그레이드를 하고자 한다면 새로운 장비로 교체하는 방법밖에 없습니다. - 새 장비로 교체 시에도 데이터 전체의 마이그레이션 작업.. 2021. 11. 8. H2 DB 사용해보기 H2 DB 사용계기 DB정보때문에 깃허브에서 클론한 프로젝트 실행 시 에러가 발생했습니다. ( 같은 DB명, 아이디, 패스워드를 사용하지 않는 이상 에러발생 ) 문제 해결을 위해 메모리를 활용하는 H2 DB를 적용해서 임시로 DB를 적용하고 후에 MySQL로 전환하여 사용하기로 했습니다. H2 DB 란? 자바 기반의 오픈소스 관계형 데이터 베이스 관리 시스템(RDBMS)입니다. H2DB는 서버(Server) 모드와 임베디드(Embedded) 모드의 인메모리 DB 기능을 지원합니다. 유의할 점은 메모리를 활용하기 때문에 데이터가 휘발성입니다. 물론 디스크 기반 테이블을 또한 생성할 수 있긴 합니다. 이경우에는 일반 RDBMS를 사용하는 편이 나을 거 같습니다. 별도의 설치과정이 없고 용량도 2MB(압축버전.. 2021. 11. 7. 'Door rush' project setting 하고 Hello world 출력 하기 오랜만에 프로젝트 셋팅을 해봤습니다. 멘토님이랑 팀원분께 PR을 하기전에 경험한 오류를 정리해봅니다. 빈 프로젝트를 생성하고 Project Structure에서 spring을 선택하고 아래의 설정 모듈을 추가했습니다. (사실 이렇게 설정을 채우기전에 MySQL Driver를 선택하지않아 시간을 오래 보냈습니다....ㅎ....ㅎ) 설정을하고 무작정 DoorrushApplication.java 파일을 실행했습니다. 에러 메시지를 받았습니다. *************************** APPLICATION FAILED TO START *************************** Description: Failed to configure a DataSource: 'url' attribute is n.. 2021. 10. 29. 이전 1 ··· 3 4 5 6 7 8 다음