[서버] Nginx
·
공부한 것
Nginx(엔진엑스)웹 서버 소프트웨어로, HTTP, 리버스 프록시, IMAP/POP3 프록시 서버 기능 등을 제공함. 높은 성능과 안정성을 목표로 개발. 적은 리소스로 많은 동시 연결을 처리할 수 있도록 설계됨.핵심 아키텍처이벤트 기반 (Event-Driven) 및 비동기 (Asynchronous) 방식: 요청을 처리하기 위해 새로운 프로세스나 스레드를 생성하는 대신 마스터 프로세스(Master Process)가 설정 파일을 읽고, 그 하위에 있는 소수의 워커 프로세스(Worker Process)가 실제 연결을 처리함. 하나의 워커 프로세스는 여러 개의 연결을 동시에 처리할 수 있음. I/O 작업이 발생하면 운영체제 커널에 작업을 위임하고 다른 이벤트를 처리하는 방식으로 동작하여 CPU와 메모리 자원을..
[서버] 쿠버네티스(Kubernetes)
·
공부한 것
쿠버네티스란? 컨테이너화된 애플리케이션을 자동으로 배포, 확장, 관리해주는 오픈소스 플랫폼.사용하는 이유자가치유: 실행 중인 컨테이너에 문제가 생기면, 쿠버네티스가 이를 감지하고 자동으로 재시작하거나 교체하여 서비스 중단을 최소화함.오토 스케일링: CPU 사용량이나 트래픽 같은 부하에 따라 컨테이너의 수를 자동으로 늘리거나 줄여 리소스를 효율적으로 사용함.자동홛횐 롤아웃과 롤백: 새로운 버전의 앱을 배포할 때, 서비스 중단 없이 점진적으로 업데이트 할 수 있음. 만약 배포에 문제가 생기면 이전 버전으로 롤백 가능.서비스 디스커버리 및 로드 밸런싱: 여러 컨테이너에 걸쳐 네트워크 트래픽을 분산시키고, 컨테이너의 IP 주소가 계속 바뀌더라도 안정적으로 서비스를 찾아 연결할 수 있도록 함.핵심 요소팟(Pod)..