StatefulSet Stateful Application 클라이언트와 서버 관계에서, 상태를 보존하는 형태의 서비스이다. 말 그대로 상태를 저장하는 형태의 애플리케이션으로 대표적으로 Mongodb, Redis, Mysql 과 같은 Database가 있다.반대 의미로
Service K8S 클러스터에는 Service를 사용하는 IP 대역이 있고 Pod를 사용하는 IP 대역이 있는데, Pod에 ip에 접근하려면 Service만 접근이 가능하다. 이게 가능한 이유는 kube-proxy 라는 녀석이 Service와 연결된 Pod들에게 적절
Lifecycle Pod를 생성한 후에 내용 하단을 보면 status 라는 내용을 볼 수 있다. Pending Running Succeeded Failed
K8S Controller Controller는 서비스를 관리하고 운영하는데 기여를 한다. Auto Healing: Pod가 죽으면 Controller가 Pod를 다시 살리는 역활을 한다. Auto Scaling: Pod의 리소스가 다 차있는 상태가 되었을때 컨트롤러가
Pod > 파드(Pod) 는 쿠버네티스에서 생성하고 관리할 수 있는 배포 가능한 가장 작은 컴퓨팅 단위이다 쿠버네티스 공식 문서에는 다음과 같이 정의 하고있다. Container 그림 처럼 하나의 파드에는 여러개의 컨테이너가 들어갈 수 있다. 다만 컨테이너에는 포
전략 패턴 (Strategy Pattern) 정의 GOF의 디자인 패턴에서는 다음과 같이 정의하고 있다. > 동일 계열의 알고리즘들을 정의하고, 각 알고리즘을 캡슐화하며, 이 알고리즘들을 해당 계열 안에서 상호교체가 가능하도록 만든다. 알고리즘을 사용하는 클라이
Future Future 같은 경우에는 단발성으로 실행되는 이벤트에 쓰기에 굉장히 좋다. 예를들어 이렇게 더하는 함수가 있다고 가정을 해보고 이 작업이 굉장히 오래 걸린다고 가정을 해보자. 이것을 우리는 비동기로 어떻게 처리할 수 있을까? 이런식으로 쓰레드를 사용
이 글의 목적: 쓰레드를 더 깊게 이해하고 row level에서 다뤄본것을 기록. 지난 포스트들은 거의 javascript 기반으로 작성이 되었는데, OS나 Network 처럼 깊게 파야하는 주제들은 C++ 로 다뤄보겠다. 쓰레드란 한 개의 CPU 코어는 단 하나의
프록시는 Subject 라고 하는 다른 객체에 대한 엑세스를 제어하는 객체입니다. 프록시는 Subject에 대해 실행되는 작업의 전부 또는 일부를 가로채서 해당 동작을 증강하거나 보완하도록 합니다.프록시는 각 작업을 Subject에 전달하여 전처리나 후처리를 통해 기능
팩토리 패턴 팩토리 패턴에는 객체를 생성하기 위한 인터페이스를 정의 하는데, 어떤 클래스의 인스턴스를 만들지는 서브 클래스에서 결정하게 만드는 패턴이다. 객체 생성과 구현의 분리를 하기 위해서 팩토리는 새 인스턴스 생성을 감싸서 객체 생성시 유연성과 제어를 제공한다
기본적으로 자바스크립트 엔진에는 Call Stack 이라는 기념이 있다.다른 언어와 마찬가지로 함수를 호출하면 Call Stack 에 쌓이는데 물론 Stack 이니 LIFO 구조로 되어있다.함수가 값을 return 하게 되면 Call Stack 에서 제거된다.그림을 보
Node.js 에 아주 기본적인 메커니즘이 콜백이다. 콜백이란 비동기 작업의 결과를 가지고 런타임에 의해 호출되는 함수이다. 실제로 콜백 없이는 Promise도 존재할 수 없으며 그렇게 되면 async/await 또한 존재할 수 없다.addSync 함수가 동기적으로 동
Common JS 는 Node.js 의 첫 번째 내장 모듈 시스템이다.크게 두가지 주요개념은 이렇게 두 가지 이다.가져오는 코드는이렇게 작성 될 수 있고export 되는 코드는이렇게 두가지 방법으로 정의 할 수 있다.중요한건 CommonJS 에서 모듈을 로드 하는 방식
I/O 는 OS 에서 하는 동작중에 가장 느리다. RAM 에 데이터가 접근 할 때는 (10^-9 초)가 걸리는 반면, 디스크와 네트워크에 접근할 때는 (10^-3 초) 정도가 걸린다.전통적인 블로킹 I/O 프레임워크를 통해 개발을 하면 Request 가 들어올때 새로운