목록전체 글 (181)
초보개발자 긍.응.성
앞선 글에서 Redis 설치 및 실행하는 과정에 대하여 알아보았습니다. Redis 설치 및 실행하기 앞선 글에서 Redis가 무엇인지에 대해 간략하게 알아보았습니다. Redis 란? What is Redis? Redis는 Remote Dictionary Server의 약자로서, "키-값" 구조의 비정형 데이터를 저장하고 관리하기 위한 오픈 소스 기. ckddn9496.tistory.com 이번 글에서는 SpringBoot에서 Redis에 연결하고 캐싱하는 방법에 대해 알아보겠습니다. pom.xml - dependency 추가 redis 사용을 위해 스프링부트의 starter 시리즈 중 spring-boot-starter-data-redis에 대한 의존성을 추가합니다. 저는 이후 RestController..
앞선 글에서 Redis가 무엇인지에 대해 간략하게 알아보았습니다. Redis 란? What is Redis? Redis는 Remote Dictionary Server의 약자로서, "키-값" 구조의 비정형 데이터를 저장하고 관리하기 위한 오픈 소스 기반의 비 관계형 DBMS입니다. 2009년 살바토르 산필리포(Salvatore Sanfilipp.. ckddn9496.tistory.com 이번 글에서는 Redis를 설치하고 실행하는 방법에 대해 알아보겠습니다. Redis 설치하기 먼저 Redis 서버를 실행시키려는 곳에 Redis를 설치합니다. Redis 다운로드 페이지에서 설치 파일을 직접 다운로드하여 실행시키거나, 리눅스 환경이라면 아래와 같이 스크립트를 이용하여 다운로드할 수 있습니다. $ wget h..
What is Redis? Redis는 Remote Dictionary Server의 약자로서, "키-값" 구조의 비정형 데이터를 저장하고 관리하기 위한 오픈 소스 기반의 비 관계형 DBMS입니다. 2009년 살바토르 산필리포(Salvatore Sanfilippo)가 처음 개발했으며 2015년부터 Redis Labs가 지원하고 있습니다. 모든 데이터를 메모리로 불러와서 처리하는 메모리 기반 DBMS이며, 현재 Redis는 가장 인기 있는 키-값 저장소로 알려져 있습니다. 또한, Redis는 in-memory 데이터 저장소 이외에도 database, cache와 message 브로커로도 사용됩니다. Redis의 특징 Redis는 single thread로 동작하기에 아래와 같은 상황에 atomic oper..
중첩 클래스의 종류와 각각의 중첩 클래스를 언제 그리고 왜 사용해야 하는지 알아보자. 중첩 클래스 (nested class) 중첩 클래스(nested class)란 다른 클래스 안에 정의된 클래스를 말한다. 중첩 클래스는 자신을 감싼 바깥 클래스에서만 쓰여야 하며, 그 외의 쓰임새가 있다면 톱 레벨 클래스로 만들어야 한다. 중첩 클래스의 종류는 정적 멤버 클래스, (비정적) 멤버 클래스, 익명 클래스, 지역 클래스 이렇게 네 가지다. 이 중 첫번째를 제외한 나머지는 내부 클래스(inner class)에 해당된다. 정적 멤버 클래스 정적 멤버 클래스는 다른 클래스 안에 선언되고, 바깥 클래스의 private 멤버에도 접근할 수 있다는 점만 제외하고는 일반 클래스와 동일하다. 정적 멤버 클래스는 다른 정적 ..
태그 달린 클래스의 단점과 해결방법을 알아보자 태그 달린 클래스 두 가지 이상의 의미를 표현할 수 있으며, 그중 현재 표현하는 의미를 태그 값으로 알려주는 클래스를 태그 클래스라고 한다. 아래의 클래스는 태그 클래스의 예이다. class Figure { enum Shape { RECTANGLE, CIRCLE }; // 태그 필드 - 현재 모양을 나타낸다. final Shape shape; // RECTANGLE에서 사용하는 필 double length; double width; // CIRCLE에서 사용하는 필드 double radius; Figure(double radius) { shape = Shape.CIRCLE; this.radius = radius; } Figure(double length, d..
MongoTemplate과 MongoRepository의 차이점 편리함(Convenient)과 강력한 사용성(powerful to use)은 어느 정도 상반되는 목표를 가집니다. 편리하다면 그만큼 세심한 부분을 일일이 제어하여 성능적인 부분을 조절하는데 강력함이 떨어질 수 있지만, 반대로 너무 모든 것을 제어하는 것은 오히려 불편함을 생성합니다. 상대적으로 repository는 template보다 더 편리하다는 장점이 있지만 template은 repository보다 더 세밀한 제어가 가능합니다. repository는 spring data의 주요 프로그래밍 모델로 사용됩니다. 둘 중 뭐가 더 좋은가요? MongoTemplate과 MongoRepository 중 한가지만을 사용하여 모든 Data Access..