분류 전체보기 609

[면접 질문] OS 8

1. 기본가상 메모리가 등장하게 된 배경은 무엇인가요?더보기컴퓨터마다 다른 물리 메모리 구조에 운영체제와 프로그램이 직접 의존하지 않기 위해 등장프로그램은 물리 메모리의 크기나 위치와 무관하게 동일한 방식으로 동작할 수 있음운영체제는 동일한 프로그램 실행 환경을 제공하도록 함 가상 메모리가 무엇인가요?더보기물리 메모리의 실제 크기와 상관없이, 각 프세스에 충분히 큰 메모리 공간을 제공하는 운영체제의 메모리 관리 기법 메모리 관리자의 역할은 무엇인가요?더보기한정된 메모리 자원을 효율적으로 관리하고 프로세스에 필요한 메모리를 적절히 할당하는 역할 메모리 관리자의 주요 기능은 무엇인가요?더보기스왑: 물리 메모리가 부족할 때, 스왑 영역으로 이동시킴동적 주소 변경: 상대 주소 → 절대 주소메핑 테이블 관리 페이..

카테고리 없음 2026.02.11

[고급 알고리즘] Graph(Shortest Path): Bellman-Ford

1. Bellman-Ford가중 유향 그래프에서 최단 경로 문제를 푸는 알고리즘단일 출발점에서 모든 정점까지의 최단 거리를 구함✅ 음수 간선 허용✅ 음수 사이클 판별 가능 2. 동작 원리정점의 갯수 - 1 번 완화를 반복 수행함➡️ 최종적으로 출발지에서 모든 정점까지의 최단 거리를 구할 수 있음 초기화✅ 자기 자신으로 가는 최단 거리 = 0✅ 다른 정점으로 가는 최단 거리 = INF (도착 못함) 간선 완화최대 간선 수 = 정점의 갯수-1 (사이클이 일어나지 않는다는 가정)✅ 점점 최단거리가 갱신됨 음수 사이클 검사사이클을 한 바퀴 돌 때마다 전체 비용이 계속 줄어드는 사이클✅ 사이클을 많이 돌수록 총 가중치는 무한히 작아짐✅ 즉, 최단경로가 없다 볼 수 있음➡️ 모든 간선에 대해서 간선의 도착지로 가는..

Algorithm 2025.12.22

[기초 알고리즘] 수학: 행렬

수 또는 다항식 또는 함수 등을 직사각형 모양으로 배열한 것 피보나치 행렬상태 벡터$ S_n = \begin{bmatrix} F_n \\ F_{n-1} \end{bmatrix} $➡️ 위 두 값만 있으면 다음 F[n+1]을 구할 수 있음 행렬 표현$ \begin{bmatrix} F_{n+1} \\ F_n \end{bmatrix}=\begin{bmatrix} 1 & 1 \\ 1 & 0 \end{bmatrix}\begin{bmatrix} F_n \\ F_{n-1} \end{bmatrix} $선형 변환으로 표현 가능 점화식$ S_n = A^{\,n-1} S_1 $A: 피보나치 행렬✅ 행렬 A를 한번 곱하기 = 한 단계를 한칸 이동시키는 연산➡️ A의 n제곱을 빠른 거듭제곱으로 계산하면 빠르게 구할 수 있음 점..

Algorithm 2025.11.22

[Spring][Validation] 3. Spring Bean Validation

Spring은 Bean Validation API를 완전하게 지원 1. LocalValidatorFactoryBeanSpring ↔️ Bean Validation 제공자를 연결해주는 브리지/어댑터 빈✅ Binding: Spring 바인딩 모델 연동 (Errors, BindingResult)✅ i18n: Spring MessageSource 연동✅ 커스텀 검증기 주입: 빈 등록을 통해 추가 가능✅ 제공자 감지: 클래스패스의 기본 Bean Validation 제공자 1개를 자동으로 감지 및 부트스트랩✅ 인터페이스: jakarta.validation.Validator, org.springframework.validation.Validator 설정) LocalValidatorFactoryBean더보기@Conf..

Spring/Spring 2025.10.13

[OpenTelemetry] 1. What is OpenTelemetry?

1. Observability Framework & Toolkit코드에 계측을 심어서 Trace, Metric, Log를 뽑아낼 수 있게 해주는 표준 도구 모음✅ 애플리케이션이 Telemetry 데이터를 생성, 수집, 내보내기 하도록 도와줌✅ 저장소와 시각화는 다른 툴이 담당함 2. 특징OTLP 프로토콜 (Telemetry 데이터 형식 정의)Semantic Convention (공통 데이터의 표준 네이밍 규칙)오픈소스 (CNCF 주도)벤더 독립적: 유연성 + 독립성 출처OpenTelemetry - What is OpenTelemetry?

DevOps 2025.09.19

[Spring Cloud Config] 1-2. Spring Cloud Config Server: Composite Environment Repositories

1. Composite Environment Repositories여러 소스에서 설정을 동시에 가져오기composite 프로필을 사용하여 여러 환경 레포지토리를 한 번에 묶어 쓸 수 있음vault가 포함될 경우, config server에 대한 모든 요청에 vault 토큰을 보내야 함 (X-Config-Token 헤더)기본적으로 일부 레포지토리 실패 시 전체 composite 요청이 실패함 (failOnCompositeError 옵션으로 무시 가능) 예시더보기spring: profiles: active: composite cloud: config: server: composite: - type: svn uri: file:///path..

카테고리 없음 2025.09.02

[Vault] Auth methods

0. OverviewVault에서 인증을 담당하는 컴포넌트✅ 사용자를 인증하고, 해당 사용자에게 identity와 policy 부여✅ 실제 인증 과정을 외부 인증 프로바이더에 위임할 수 있음 (AWS, Github 등) Enabling/Disabling auth methods명령어/API로 활성화 가능✅ 모든 auth method는 auth/ prefix 아래에 마운트됨 (auth type별로 경로가 생성됨)✅ auth method가 꺼지면, 해당 방식으로 로그인했던 모든 사용자가 로그아웃됨 명령어) 활성화더보기더보기vault auth enable External auth method considerationsvault는 외부 인증 시스템에 로그인 시점과 토큰 갱신 시점마다 실시간으로 확인 요청을 보냄..

카테고리 없음 2025.09.02

[Spring Cloud Vault] 1. 설정

1. ConfigData API외부 설정을 가져오는 역할을 하는 API✅ Vault, Config Server 등✅ 어떤 설정 시스템을 가져올지, 순서를 어떻게 할지 지정 가능➡️ 유연성 높음 ConfigData Locations위치vault://vault:/// (컨텍스트 지정 가능)vault:///?prefix= (prefix 지정 가능) 기본 경로/secret/${spring.application.name}/${profile} 예시) application.yml더보기spring.config.import: vault://first/context/path, vault://other/path, vault://spring.config.import: vault://my/path?prefix=foo., vau..

카테고리 없음 2025.08.31

[Spring Cloud Vault] 0. Overview

0. 소개Spring Vault 위에서 동작하는 클라이언트 사이드 지원 도구✅ 모든 환경에서 애플리케이션이 필요로하는 외부 비밀 속성을 중앙에서 관리할 수 있음➡️ 다양한 외부 서비스에 대한 접속 자격 증명을 애플리케이션에 제공함 타입정적 비밀: 고정 값으로 자격 증명하는 방식의 secret (사용자 이름/비밀번호 등)동적 비밀: 필요할 떄마다 생성되는 임시 자격 증명 1. Server 설치2. Client 셋팅의존성) gradle더보기implementation 'org.springframework.cloud:spring-cloud-starter-vault-config' application.yml더보기spring.cloud.vault: host: localhost # Vault ..

카테고리 없음 2025.08.31

[Vault] Secret Engines

1. Overview데이터를 저장, 생성, 암복호화하는 컴포넌트 Path & RoutingVault 내 특정 경로에 마운트됨클라이언트 요청이 들어오면, Vault 라우터가 경로 접두어를 보고 해당 엔진으로 라우팅함 Lifecycle동작요약주요 영향enable엔진을 특정 경로에 활성화엔진 인스턴스 생성✅ 경로 대소문자 구분➡️ 해당 경로로 요청 라우팅 시작disable해당 엔진 비활성화엔진 사용 불가✅ 저장 데이터 제거move엔진의 마운트 경로 변경기존 경로에서 발급된 모든 리스 무효화✅ 설정 데이터는 유지tune엔진의 전역 설정예: TTL 등⚠️ 엔진의 경로가 충돌되어서는 안됨 (서로 접두어 관계가 되면 안됨) 예시) 명령어더보기vault secrets enable -path= vault secrets ..

카테고리 없음 2025.08.30