본문 바로가기

전체 글62

2. Linux(리눅스) 이해 kernel vs OS(distribution), 커널 vs 운영체제 개요 Kernel과 OS(리눅스 배포판)의 차이를 아는 것은 앞으로 OS를 운영하는데 핵심적인 지식입니다. 흔히 OS에서 제공하는 기능과 종속적인 시스템들을 OS 수준인지 커널 수준인지 혼동하는 경우가 많습니다. 이는 애플리케이션을 운영하는데 있어서도 고수준으로 갈수록 중요한 문제입니다. 커널이란? 커널은 컴퓨팅 하드웨어 자원을 추상화하고 프래그램 수준에서 하드웨어 자원에 접근할수 있도록 인터페이스를 제공하고 하드웨어를 컨트롤하는 시스템 소프트웨어입니다. 커널과 OS의 차이를 알기위해서 소프트웨어, 프로그램등의 미묘한 차이를 구분할 수 있는 것이 중요합니다. 아래 포스팅을 먼저 읽는 것을 추천드립니다. https://asung123456.tistory.com/53 1. Linux(리눅스) 이해 - 개요 .. 2022. 7. 16.
Docker(file) CMD & ENTRYPOINT & RUN 그리고 docker 컨테이너 생명주기와 프로세스 (container lifecycle & process) CMD & ENTRYPOINT & RUN 는 모두 Dockerfile을 작성할 때 사용되는 문법이며 docker images에 저장되어 있는 값들입니다. RUN run은 docker 이미지가 빌드될 때 실행되는 명령어로 주로 패키지 설치, 빌드 명령어 등에 사용됩니다. run은 다른 포스팅 글에서도 이해하기 쉬운 설명이 많으므로 간략하게 패스하겠습니다. CMD 공식 docker 문서에 의하면 cmd는 3가지 형태로 사용될 수 있습니다. The CMD instruction has three forms: CMD ["executable","param1","param2"] (exec form, this is the preferred form) CMD ["param1","param2"] (as default pa.. 2022. 7. 1.
Loadbalancer란? Round Robin vs Least Connection Loadbalancer란? 종단 서버의 부하분산을 위해서 Loadbalancer(이하 LB) 서버(혹은 전용 장비)에 트래픽이 들어온 후 네트워크 분산하는 솔루션 nginx, envoy 혹은 기타 소프트웨어(proxy 소프트웨어등)로 구현될 수 있으며, 고가의 로드밸런싱 전용 장비도 있습니다. LB는 vip라고 불리는 ip를 사용하며, clinet는 해당 vip로 트래픽을 전송합니다. LB는 이렇게 들어온 트래픽들을 자신이 정한 Rule에 맞춰 종단 서버로 포워딩합니다. L4 계층부터 세션의 의미를 가지므로 트래픽 분산이 정상 동작할 수 있습니다. 여기서 말하는 세션이란, 의미가 있는 데이터(패킷)들의 모음입니다. UDP에는 TCP와 같은 완전한 연결형 프로토콜은 아니지만, clinet의 ip와 port.. 2022. 6. 28.
FastAPI can not use request body in middleware / 미들웨어에서 request body 사용 불가 / FastAPI(starlette) AGSI flow starlette는 경량 ASGI를 구현할 수 있는 웹프레임워크이며, FastAPI는 starlette를 wraping하여 http 서비스(웹 혹은 API)를 간단하게 만들 수 있는 웹프레임워크입니다. https://www.starlette.io/ Starlette ✨ The little ASGI framework that shines. ✨ Introduction Starlette is a lightweight ASGI framework/toolkit, which is ideal for building async web services in Python. It is production-ready, and gives you the following: A lightweight, low-complexity H.. 2022. 4. 10.