디오판토스 부등식을 이용한 API 속도 제한 모델링

2025-06-30

이 글에서는 디오판토스 부등식을 이용한 수학적 접근 방식으로 API 속도 제한 문제를 해결하는 방법을 탐구합니다. 시간당 10개의 요청, 작업당 3회 재시도라는 시나리오를 예로 들어 작업 스케줄링 문제를 정수 해결 문제로 변환하는 방법을 보여줍니다. 작업의 재시도 패턴과 시간 창을 분석하여 부등식 모델을 구축하고, Go 언어를 사용하여 속도 제한을 초과하지 않고 새로운 작업을 안전하게 스케줄링할 수 있는지 여부를 판단하는 프로그램을 작성합니다. 또한 알고리즘 최적화에 대해서도 언급하며 시간 복잡도를 O(n^2)에서 O(n*log(n))으로 줄이는 방법을 제시합니다.

더 보기

NAT 이해하기: IPv4 고갈 문제에 대한 Linux의 영리한 해결책

2025-06-18

집 Wi-Fi 네트워크를 생각해 보세요. 모든 기기가 동일한 공용 IP 주소를 공유합니다. 이는 네트워크 주소 변환(NAT) 덕분입니다. IPv4 주소의 수가 제한되어 있으므로 NAT는 개인 IP를 라우터의 단일 공용 IP에 영리하게 매핑하여 여러 기기가 단일 공용 IP를 공유할 수 있도록 합니다. 이 기사에서는 NAT의 작동 방식, 다양한 유형(Full Cone, Restricted Cone, Symmetric NAT) 및 Linux에서의 구현(nftables 사용)을 Docker 예시를 사용하여 설명합니다. NAT는 IPv4 고갈 문제를 일시적으로 해결하지만, 엔드투엔드 연결 끊김 및 암호화 복잡화와 같은 제한 사항도 도입합니다. 궁극적으로 IPv6의 보급이 진정한 해결책입니다.

더 보기
개발