Kubernetes for appliation developers - 1. 쿠버네티스 구조
Kubernetes for application developers(LFD459) 1. 쿠버네티스 구조 1-1. 쿠버네티스란? 컨테이너를 데스크탑에서 실행하는 것은 쉽다. 하지만 여러 호스트에 다운타임 없이 스케일링 하며 배포하고 연결하는 것은 어렵다. 쿠버네티스는 분산 시스템을 탄력적으로 실행하기 위한 프레임워크를...
Kubernetes for application developers(LFD459) 1. 쿠버네티스 구조 1-1. 쿠버네티스란? 컨테이너를 데스크탑에서 실행하는 것은 쉽다. 하지만 여러 호스트에 다운타임 없이 스케일링 하며 배포하고 연결하는 것은 어렵다. 쿠버네티스는 분산 시스템을 탄력적으로 실행하기 위한 프레임워크를...
Statement canceled 에러의 원인과 해결 Statement Timeout 티베로 서버를 JDBC 로 연결해 사용하던 중 JDBC-12040:Statement canceled 에러가 발생했다. 이 에러는 statement timeout 에 의해 발생하는 에러이다. statement timeout 은 statement 하나가 얼마나 오...
가상 메모리와 스왑 메모리 스왑 메모리는 프로세스 단위이다. 메모리에 P1, P2, … P10 10개 프로세스가 돌고 있는데 남은 메모리 공간이 없다. 이 때 P11 을 실행 시키고 싶을때 메모리 확보를 위해 일부 프로세스를 디스크로 내리고 P11 을 메모리에 올리는 과정을 스와핑이라고 한다. 스왑 과정은 시간이 오래 걸리는 작업이고 필요한 공간이...
DB 샤딩, 클러스터링, 레플리케이션 1. 클러스터링 DB 서버가 다운되는 경우를 대비하기 위해 DB 서버를 여러 개로 만든다. 2. 레플리케이션 DB 데이터가 손실되는 경우를 대비하기 위해 실제 저장소를 복제한다. 3. 샤딩 데이터가 너무 많아 검색이 느린 경우 검색 속도를 높이기 위해 테이블을 나눠서 저장한다. D...
DB 정규화 DB 의 중복을 최소화 하도록 설계해 무결성을 유지하고 테이블의 상태 이상을 방지한다. 1. 제 1 정규화 컬럼이 원자 값을 가져야 한다. AS-IS id name subject 1 a math ...
출처 : https://alvinlal.netlify.app/blog/single-thread-vs-child-process-vs-worker-threads-vs-cluster-in-nodejs Node.js child process vs worker threads vs cluster Node.js 는 Http 요청에 응답하고, DB 에 데이...
출처 : https://engineering.linecorp.com/ko/blog/pm2-nodejs/ pm2 를 사용해 무중단 배포하기 node.js 는 기본적으로 싱글 스레드라서 CPU 의 멀티코어 시스템을 활용할 수 없다. node.js 의 cluster 모듈을 통해 멀티 프로세스로 늘려 멀티코어 시스템 문제를 해결한다. 클러스터...
실행 컨텍스트(EC) 자바스크립트 코드가 실행되기 위한 환경. EC 는 실행 컨텍스트 스택(콜 스택) 에 추가된다. 함수를 호출하면 실행된다. 실행이 끝난 함수의 EC 는 실행 컨텍스트 스택에서 제거된다. 1. 실행 컨텍스트 구조 출처 - https://poiemaweb.com/js-execution-context VO...
프로세스와 스레드 1. 프로세스 프로세스 컨트롤 블록(PCB) : 프로세스를 관리하기 위해 커널에서 사용하는 자료구조 출처 - https://enlqn1010.tistory.com/26 프로세스 상태 출처 - https://rebas.kr/852 PCB pointer : 커널에서 실행 중인 프...
자바 HashMap 의 동작 1. HashTable 원소의 검색과 저장을 O(N) 에 해결한다. 해쉬 함수(r mod M)로 해쉬 값을 구하고 해쉬 값을 주소로 하는 위치에 저장한다. 2. 해쉬 충돌 해쉬 값이 겹치는 경우 두 가지 방법으로 해결한다. 체이닝 방법 : 같은 주소에 해당하는 원소를 링크드 리스트로 관리한다. Op...