All Categories

algorithms (1)
architectures (9)
development (10)
system-operations (7)

Binary search로 삽입 위치 찾기 - 그림으로 쉽게 이해하기

정렬된 배열에서 특정 숫자를 찾는 "찾기 문제" 또는 특정 숫자가 들어갈 위치를 찾는 "삽입 문제"가 주어진다면, 일단 binary search부터 생각해보는 것이 좋다. 찾기 문제는 원하는 숫자가 나올 때까지 찾으면 되기 때문에 직관적으로 이해하기 쉽다. 반면, 삽입 문제는 배열에 없는 숫자의 위치를 찾아야 할 수도 있기 때문에 헷갈리는 편이다. 시각적으로 원리를 쉽게 이해해보자.

Validation 코드는 어디에 작성해야 할까? - The 3 types of validation logics

개발자들은 다양한 validation 코드들을 작성하는데 많은 시간을 소비한다. 이곳저곳에 덕지덕지 붙어있는 validation 코드들을 바라보면, 과연 이 코드들이 여기에 있어도 되는 것인지 의문이 생긴다. 다양한 종류의 validation 코드들을 어디에 작성해야 하는지 정리해보자.

Domain model에서 repository를 직접 사용해도 될까? - 도메인 모델의 영속성 무지

Repository는 인프라적인 요소에 가깝다고 할 수 있다. 그런데, 이 repository를 도메인 모델에서 직접 사용해도 괜찮을까? DDD와 관련된 여러 참고 문서들에서는 이에 대해 통일되지 않은 견해를 보이고 있다. 이 글을 통해 여러 견해들을 한꺼번에 모아서 생각해보자.

Aggregate의 문제점과 바람직한 설계 방법 - DDD aggregate diet

DDD의 aggregate는 일관성 관리를 위해 매우 중요한 개념이지만, 덩치가 커질수록 성능과 확장성 측면에서 문제가 발생하게 된다. Composition 기반 aggregate의 문제점에 대해 자세히 살펴보고, 효율적인 aggregate를 설계하기 위한 방법들을 알아보자.

... and 6 more posts

Python FastAPI로 파일 업로드 및 다운로드 가능한 web server 개발하기

FastAPI를 활용하면 파일을 업로드하거나 다운로드할 수 있는 web server를 매우 간단하게 구현할 수 있다. 예제 코드와 함께 최대한 간단하게 파일 업로드 및 다운로드 API를 구현하고 테스트하는 방법을 알아보자.

안전하게 무한 루프 탈출하기 - Handling SIGTERM in kubernetes with python

프로그램의 유형에 따라 명확한 종료 시점 없이 반복적인 작업을 수행해야 하는 경우가 있다. 그런데, 영원한 것은 없지 않나! 언젠가는 종료를 시켜야 한다면, 어떻게 해야 안전하게 무한 루프를 빠져나올 수 있는지 알아보자.

Python에서 decimal의 precision 문제와 수의 표현 범위

Python의 기본 자료형인 float은 정밀한 수를 담거나 연산할 때 한계가 있다. 좀 더 정밀한 수를 다루기 위해서 decimal이라는 자료형을 사용하는데, 여전히 일부 연산에서는 precision 관련 오류가 발생한다. 어떤 문제가 있는지 살펴보자.

... and 7 more posts

Kubernetes legacy version들의 최후 - Kubernetes apt install GPG error

2024년 11월 초부터 ubuntu에 kubernetes 클러스터를 구성하기 위해 kubeadm, kubelet, kubectl 설치하려는데 GPG error가 발생하고 있다. Kubernetes의 package repository에서 이전 버전들을 더 이상 제공하지 않는 것일까? 어떤 문제인지 살펴보자.

Certbot과 docker로 카페24 사이트에 무료 HTTPS 적용하기 - 무료 SSL 인증서 설치 방법

Let's Encrypt를 사용하면 명령어 몇 줄로 무료 SSL 인증서를 쉽게 받을 수 있다. 게다가 ZeroSSL과 달리 무료 인증서 최대 개수 제한도 없다. ZeroSSL 대신 사용할 수 있는 초간단 카페24 무료 SSL 인증서 설치 방법에 대해 알아보자.

ZeroSSL로 카페24 사이트에 무료 HTTPS 적용하기 - 무료 SSL 인증서 설치 방법

웹 사이트에 HTTPS를 적용하려면 SSL 인증서를 설정해주어야 한다. 카페24는 UI를 통해 외부 인증서를 FTP, SSH 등의 복잡한 과정 없이 설정할 수 있는 기능을 제공한다. ZeroSSL 이메일 인증을 통해 카페24에서 호스팅하는 사이트에 무료 인증서를 쉽게 적용하는 방법을 알아보자.

... and 4 more posts