본문 바로가기

Storage

(176)
MMDB를 따로 두는 이유 MMDB를 따로 두는 이유성능 최적화 (빠른 조회와 처리 속도)MMDB는 메모리(RAM)에서 직접 데이터를 읽고 쓰기 때문에 디스크 I/O가 발생하는 업무 DB보다 훨씬 빠름.실시간으로 빠른 응답이 필요한 경우(예: 트랜잭션 캐싱, 세션 정보 저장, API 응답 최적화)에 사용.업무 DB 부하 감소MMDB를 캐시(Cache) 또는 세션 저장소(Session Store)로 활용하면 반복적인 조회 쿼리를 줄일 수 있음.이렇게 하면 업무 DB의 부하를 줄이고, 트랜잭션 처리 성능을 개선할 수 있음.실시간 데이터 처리MMDB는 빠른 연산과 분석이 필요한 데이터 처리에 적합함.예를 들어, 실시간 랭킹, 추천 시스템, 금융 거래 시세 분석 등 빠르게 변화하는 데이터를 다룰 때 유용.데이터 일관성 및 안정성 유지업무..
OpenShift Kubernetes Distribution OKD 작업이란? OKD(OpenShift Kubernetes Distribution) 전환 작업이란, 기존의 애플리케이션 또는 시스템을 OKD 환경으로 이전하는 과정(기존 시스템을 OKD 기반의 컨테이너 환경으로 마이그레이션하는 과정 ), OKD는 Red Hat OpenShift의 오픈소스 버전으로, Kubernetes 기반의 컨테이너 오케스트레이션 플랫폼. OKD 전환 작업에서 발생할 수 있는 사항기존 애플리케이션 컨테이너화기존 시스템이 VM 또는 베어메탈 환경에서 운영되고 있었다면, 이를 컨테이너 기반으로 변환해야 함.컨테이너화 과정에서 기존 서비스가 일시적으로 중단되거나 지연될 가능성이 있음.데이터 연동 이슈기존 데이터베이스 및 스토리지 시스템을 OKD 환경에서 접근할 수 있도록 마이그레이션해야 ..
Kafka 기본 개념 정리 Apache Kafka는 분산 메시징 시스템으로, 대규모 데이터 스트리밍 처리와 실시간 로그 수집, 분석 등에 사용된다. Kafka는 Pub/Sub 모델과 분산 로그 저장소로 작동하며, 빠른 처리 속도와 높은 확장성을 제공한다.
클라이언트 요청이란? 클라이언트 요청은 브라우저, 모바일 앱,다른 서버 등 다양한 클라이언트가 서버에 HTTP 프로토콜을 사용해 정보를 요청하는 행위입니다. 이 요청은 HTTP 메서드 (GET, POST, PUT, DELETE 등)와 함께 특정 URL을 통해 전달됩니다. I. 클라이언트 요청의 구성 요소1. HTTP 메서드· GET: 데이터 조회를 요청 (예: /products에서 상품 목록 조회).· POST: 서버에 데이터 전송 및 리소스 생성 요청 (예: /products에서 상품 추가).· PUT: 기존 데이터를 수정 요청 (예: /products/1에서 상품 정보 업데이트).· DELETE: 특정 데이터를 삭제 요청 (예: /products/1에서 상품 삭제). 2. URL(Path)· 클라이언트가 원하는 리소스에 ..
Spring MVC 패턴 I. Spring MVC란?· Model-View-Controller 아키텍처 패턴을 기반으로 한 Spring Framework의 웹 애플리케이션 개발 모듈이다.· 애플리케이션의 각 관심사를 명확히 분리하여 유연하고 유지보수하기 쉬운 코드를 작성가능. 1. 주요 구성 요소 @ Model· 애플리케이션의 데이터와 비즈니스 로직을 담당.· 데이터를 처리하거나 DB와 상호작용하는 역할.· 데이터 객체(VO, DTO)와 이를 처리하는 서비스 계층이 포함될 수 있음. @ View· 사용자에게 데이털르 표시하는 역활.· HTML, JSP, Thymeleaf 등 다양한 템플릿 엔진을 통해 구현 가능.· 사용자 경험(UX)을 담당하며, 컨트롤러가 전달한 데이터를 표시.@ Controller· 사용자의 요청을 처리하고 ..
Java 컬렉션 프레임워크인가 아닌가..? 2025년 01월 20일 직장 후배가 질문한 내용에 답변을 못했다.정말 어려운 질문이고 좋은 질문이지만 제대로 답변하지 못하여 공부하고자 만들어 본 포스팅이다.A. 선배님 자바 컬렉션 인터페이스는 개발자가 직접 호출하고 프레임워크 성격을 띄지 않고 있는거 같은데 왜 프레임워크라고 하는지 모르겠습니다. 자바 컬렉션을 직접 호출하여 사용하는 것만으로는 프레임워크의 특징은 "제어의 역전(Inversion of Control, IoC)"를 명확하게 느낄 수 없기 때문에 질문한 내용. 1. 프레임워크란?· 특정한 작업을 쉽게 할 수 있도록 설계된, 일련의 규칙과 구조를 제공하는 소프트웨어 시스템· 일반적인 구조를 제공하고, 세부적인 구현을 개발자가 확장하는 것!!구분설명구조코드 조직을 위한 체계적인 방식.표준화일..
Java Stream(스트림) I. Java Stream이란?· Java 8에서 도입된 기능으로, 컬렉션(Collection) 또는 배열과 같은 데이터 소스의 요소를 처리하고 변환하기 위한  선언적이고 함수형 스타일의 API· 스트림을 사용하면 코드가 간결해지고, 데이터 처리 작업을 병렬화하거나 효율적으로 수행할 수 있음. 1. 선언적 방식· 스트림 API는 for 또는 while 루프 대신 선언적으로 데이터를 처리한다.  (예: filter, map, collect) 2. 데이터 프름 중심· 스트림은 데이터의 흐름을 처리하기 위해 사용되며 데이터 자체를 변경하지 않는다.· 스트림은 원본 데이터를 변경하지 않는 불변성을 보장한다. 3. 중간 연산과 종결연산· 중간 연산(Intermediate Operation) : 다른 스트림을 반환..
Java 컬렉션 프레임워크란? I. Java 컬렉션 프레임워크@ Java Collection Interfaces의 정의와 특징.· Java 컬렉션 프레임워크는 다양한 데이터 구조를 관리하고 조작할 수 있는 클래스와 인터페이스의 집합이다.· Java 프로그램에서 데이터를 효율적으로 저장, 검색, 삭제 및 수정할 수 있는 방법을 제공한다.· 컬렉션 프레임워크는 크게 컬렉션 인터페이스, 구현 클래스, 유틸리티 클래스로 나눌 수 있다. @ Java 컬렉션 프레임워크의 사용목적.· 다양한 데이터 구조를 제공하여 효율적인 데이터 관리를 지원.  각 컬렉션의 특성과 사용 목적에 맞는 구현 클래스를 선택하고 활용하는 것이 성능을 최적화하는 데 중요 1. 컬렉션 인터페이스(Collection Interfaces) ·  컬렉션 인터페이스는 컬렉션의 동..