[2024.01.01] 해피 뉴 이어~~!
2024.01.01 월요일 잘 가 2023, 2024도 행복한 일만 가득하길!
- 일상
- · 2024. 1. 1.
300x250
Sorted SetRedis의 Sorted Set은 말 그대로 정렬된 집합을 표현하는 자료구조로, 각 요소는 고유한 멤버와 스코어 한 쌍으로 이루어진다. 스코어는 멤버의 순서를 결정하는 데 사용된다. Sorted Set의 대표적인 기능으로 멤버의 추가, 삭제, 검색을 제공하며, 스코어를 기반으로 한 업데이트, 조회 또한 제공한다. Sorted Set의 특성은 다음과 같다 :1. 고유한 멤버 : 멤버는 고유한 값으로 구성된다. 2. 정렬된 상태로 저장 : 스코어에 따라 정렬되어 저장된다. 3. 빠른 조회 : 내부적으로 skip list로 구현되어 있어 조회 시 O(log(N))의 시간 복잡도를 갖는다.4. 유연한 조회 : 스코어 기준으로도 멤버를 조회 가능하다. Sorted Set의 이..
프록시 패턴 프록시 패턴은 하나의 객체가 다른 객체의 대리자 역할을 하도록 설계하는 디자인 패턴으로 대리자는 실제 객체와 동일한 인터페이스를 가지며, 클라이언트는 실제 객체를 직접 사용하는 대신 대리자를 통해 간접적으로 상호작용한다. 이 패턴을 사용함으로써 얻는 이점은 다음과 같다 : 1. 로깅 : 프록시 객체는 클라이언트의 요청과 실제 객체의 작업 결과를 로깅할 수 있다. 2. 보안 강화 : 프록시 객체가 클라이언트의 요청을 검증하고 필요한 권한 확인 등의 작업을 수행함으로써 보안상의 이점을 가져간다. 3. 성능 최적화 : 실제 객체가 생성 및 초기화에 많은 비용이 드는 경우, 프록시 객체를 사용하여 실제 객체가 필요한 시점에 생성하거나 초기화할 수 있다. 스프링에서는 프록시 객체를 만드는 여러 가지 ..
2024.01.01 월요일 잘 가 2023, 2024도 행복한 일만 가득하길!
퍼사드 패턴, 소개 퍼사드 패턴은 어떤 시스템이나 라이브러리의 복잡한 기능을 클라이언트에게 더 쉽게 제공하기 위한 패턴이다. 클라이언트가 복잡한 서브시스템과 직접적으로 상호작용하는 대신, 간단한 퍼사드 인터페이스와 상호작용하게끔 한다. 이를 통해 클라이언트는 서브시스템의 내부 구조를 알 필요 없이 퍼사드 인터페이스를 통해 간단하게 사용할 수 있다. 여담으로 비침투적인 스프링 프레임워크도 이러한 퍼사드 정신을 가지고 있다고 본다. 퍼사드 패턴, 코드 before OrderProcessor.java, PaymentProcessor.java, InventoryManager.java 주문, 결제, 재고 관리로 이어지는 세 개의 서브시스템 // 서브시스템 1: 주문 처리 class OrderProcessor { ..