전체 글

일단 맨땅에 헤딩한 뒤에 배우는 타입입니다
공부!

4. Spring

보호되어 있는 글입니다.

공부!

레디스(Redis)란 무엇이며, 왜 사용할까?

서버 성능 개선을 위한 캐시 사용과, 분산 서버 환경에서 세션 인증 정보 유실 문제를 대응하며 Redis를 사용했습니다. Redis가 무엇인지, 어떤 구조이며 왜 사용했는지 간단하게는 설명했지만 조금 더 구조적으로 정리하진 않은 것 같아 새로운 글에 적당히 정리해보도록 하겠습니다. 1. 캐시의 필요성 사용자의 모든 리소스 요청에 대해 DB 쿼리를 날린다면 서버의 성능이 크게 저하됩니다. DB 연결은 IO bound task이기 때문에 웹 서버 안에서 끝날 수 있는 작업에 비해 오래 걸리고, DB 커넥션을 얻기 위해 웹서버 스레드가 대기 상태에 들어가 서버 자원을 온전히 사용하지 못하게 될 수도 있기 때문입니다.(이를 Blocking-IO라고 합니다) 따라서 어플리케이션을 구성할 때, DB 서버로 요청을 ..

JAVA/Effective JAVA

2장 : 객체의 생성과 파괴

2장은 자바에서 사용하는 객체의 생성자, 싱글톤 객체, GC와 관련한 내용을 다룹니다. 1. 생성자를 직접 사용하기보단 정적 팩토리 메소드 팩토리 메소드에 이름을 붙임으로써 객체를 더 가독성 있게 생성 새로 생성될 필요가 없는 객체를 기존에 존재하는 객체로 반환 ex.싱글톤 반환 객체 타입의 하위 클래스 객체들도 반환할 수 있는 다형적인 동작 2. 생성자에 매개 변수가 많다면 Builder 객체 생성에 필수적이지 않은 필드까지 고려한 많은 생성자 오버로딩은 코드의 양을 늘리는 주범 사용자의 필드값 설정이 가능한 필드만 빌더로 열 수 있음 3. 싱글톤 객체 : private 생성자와 Enum 사용 싱글톤 객체를 만들기 위해선 생성자를 private으로 둬 객체 생성을 막아야함 private static f..

프로젝트/레시피토리(Recipetory)

Unit Testing을 읽고 : 나는 과연 유닛 테스트를 잘 작성했을까?

"단위 테스트"라는 책을 읽었습니다. 단위 테스트 - 예스24 소프트웨어 개발에 있어 단위 테스트는 이제 선택이 아니라 필수가 됐다. 단위 테스트에 대한 오해를 바로잡고, 올바른 단위 테스트에 대한 원칙, 테스트를 작성하는 스타일과 효과적인 테스트 www.yes24.com 의미 있는 테스트란 무엇인지, 그것을 위해 어떻게 코드를 작성해야하며 그를 위한 방법은 무엇인지 전반적인 방법론과 철학을 설명한 책입니다. 현재 "레시피토리" 프로젝트는 어플리케이션 코드에 사용되는 로직에 단위 테스트 코드를 작성했는데, 책의 내용과 대조해보면서 그동안 작성했던 테스트 코드에 문제가 있는지, 혹은 잘 작성되었는지 확인해보도록 합시다. # 전반적인 책의 내용 책에 있는 모든 내용은 아니더라도, 테스트 코드를 살펴보기 위한..

김부추
두들두들