모든 포스트

타입스크립트 심화 #2 Mapped types
5 분 소요

타입스크립트 심화 #2 Mapped types

객체 타입을 한 번에 변환하는 mapped types — Partial/Required/Readonly가 어떻게 만들어졌는지부터 키 리매핑(as), modifier(+/-)까지 정리합니다.

AWS 고급 #4 API Gateway + Lambda
8 분 소요

AWS 고급 #4 API Gateway + Lambda

REST API vs HTTP API 차이, Lambda 통합(proxy / non-proxy), 라우트 / 메소드, 권한(IAM / Cognito / Lambda authorizer), 스테이지 / 배포 / 사용량 플랜까지. Lambda를 HTTP로 노출하는 표준 패턴을 정리합니다.

K8s 중급 #7 RBAC / NetworkPolicy / ResourceQuota — 보안과 자원 정책
22 분 소요

K8s 중급 #7 RBAC / NetworkPolicy / ResourceQuota — 보안과 자원 정책

K8s 중급 시리즈의 마지막 글입니다. [#6](/ko/posts/k8s-intermediate-6)까지 워크로드 운영 모델 — 컨트롤러, 영속 데이터, 외부 진입점, 자원 모델, 헬스 체크, 오토스케일링 — 까지 정리했습니다. 이번 글에서는 한 클러스터 위에 여러 팀,환경이 같이 사는 멀티테넌트 운영의 마지막 빈 부분을 메우는 세 객체 `RBAC`, `NetworkPolicy`, `ResourceQuota`를 정리하겠습니다. 누가 객체를 만들 수 있는가, 어떤 트래픽이 통하는가, 얼마나 많이 만들 수 있는가의 세 차원이 모두 네임스페이스 단위 정책으로 묶이며 [기초 #7](/ko/posts/k8s-basics-7)에서 짧게 짚었던 Namespace의 진짜 가치가 이 세 객체로 풀립니다. 시리즈 마지막 글이므로 7편 회고와 다음 트랙(K8s 고급) 예고도 함께 담겠습니다.

LLM은 어떻게 다음 단어를 맞히는가 — 비전공자를 위한 AI 설명
6 분 소요

LLM은 어떻게 다음 단어를 맞히는가 — 비전공자를 위한 AI 설명

ChatGPT 같은 대규모 언어 모델이 글을 이해하는 것이 아니라 다음에 올 단어를 확률로 예측하는 기계라는 원리를 비전공자도 이해할 수 있게 설명합니다.

RHEL 고급 #3 성능 분석 — sar, top/htop, iostat, vmstat, perf
8 분 소요

RHEL 고급 #3 성능 분석 — sar, top/htop, iostat, vmstat, perf

RHEL 머신이 느려졌을 때 어디부터 봐야 할지를 정리합니다. top/htop으로 첫 시야를 잡고, vmstat으로 CPU,메모리,IO를 한 화면에 보고, iostat으로 디스크를 자세히 들여다보고, sar로 시간 흐름을 추적하고, perf로 CPU 핫스폿을 잡는 흐름을 USE(Utilization,Saturation,Errors) 방법론에 맞춰 한 사이클로 다루겠습니다.

도커 실전 강좌 #4 CI에서 이미지 빌드 — GitHub Actions와 BuildKit 캐시
8 분 소요

도커 실전 강좌 #4 CI에서 이미지 빌드 — GitHub Actions와 BuildKit 캐시

GitHub Actions에서 도커 이미지를 빌드하고 푸시하는 정석을 다룹니다. docker/build-push-action, BuildKit의 GHA 캐시(type=gha), 멀티 아키(amd64+arm64) 빌드, 빌드 시점 secrets, 빌드 시간 최적화까지 한 워크플로우 파일에 정리합니다.

모던 파이썬 고급 #5 GIL과 동시성 — threading vs multiprocessing vs asyncio
7 분 소요

모던 파이썬 고급 #5 GIL과 동시성 — threading vs multiprocessing vs asyncio

GIL의 정체, threading/multiprocessing/asyncio 세 도구의 분담, 그리고 Python 3.13~3.14의 free-threaded 빌드(PEP 703/779)까지 한곳에 정리합니다.

앵귤러 고급 강좌 #3 동적 컴포넌트와 ViewContainerRef
11 분 소요

앵귤러 고급 강좌 #3 동적 컴포넌트와 ViewContainerRef

런타임에 컴포넌트를 동적으로 생성하는 패턴을 정리합니다. ViewContainerRef와 createComponent부터 @defer, ngComponentOutlet, CDK Portal, 동적 인젝터, 그리고 메모리 관리까지 한 번에 다룹니다.

장고 고급 #3 쿼리 최적화 — N+1, select_related, EXPLAIN, 인덱스
7 분 소요

장고 고급 #3 쿼리 최적화 — N+1, select_related, EXPLAIN, 인덱스

N+1의 정체부터 select_related/prefetch_related, only/defer, EXPLAIN, 인덱스, bulk_*, select_for_update까지 장고 ORM의 성능 도구상자를 정리합니다.

타입스크립트 심화 #1 keyof와 typeof
6 분 소요

타입스크립트 심화 #1 keyof와 typeof

타입을 만드는 가장 기본 도구 두 가지를 다룹니다. keyof로 키를 모으고 typeof로 값에서 타입을 끌어오는 법, 그리고 둘이 만나면 가능해지는 패턴들까지 정리합니다.

AWS 고급 #3 Lambda 기초
9 분 소요

AWS 고급 #3 Lambda 기초

Lambda의 쓰임새(vs ECS / EC2), runtime / handler / event / context, 동기 vs 비동기 호출, 콜드 스타트와 Provisioned Concurrency, 동시성 / 한도, 로깅과 모니터링까지. AWS 서버리스의 첫 단추를 정리합니다.

K8s 중급 #6 오토스케일링 — HPA / VPA / Cluster Autoscaler
23 분 소요

K8s 중급 #6 오토스케일링 — HPA / VPA / Cluster Autoscaler

[#5](/ko/posts/k8s-intermediate-5)까지 다룬 모델은 단일 Pod의 자원과 건강 신호 차원이었습니다. 그러나 운영의 부하는 시간대,사용자 패턴,이벤트에 따라 출렁이고, 사람이 매번 `replicas` 값을 손으로 맞추는 일은 곧 한계에 부딪힙니다. 이번 글은 그 빈 부분을 메우는 세 차원의 오토스케일링 — Pod 개수를 자동으로 늘리고 줄이는 `HPA`, Pod의 자원 요청,상한을 자동으로 권장,조정하는 `VPA`, 그리고 노드 자체를 자동으로 추가,제거하는 `Cluster Autoscaler`를 한 사이클로 정리하겠습니다. metrics-server라는 전제, HPA의 `autoscaling/v2` 매니페스트와 알고리즘, scale up,down 비대칭의 `behavior`, custom metric과 KEDA, VPA의 세 컴포넌트, HPA,VPA의 충돌, Karpenter까지 다룹니다.