도커 교과서 2장 도커의 기본적인 사용법
·
📚 책/도커 교과서
2장 도커의 기본적인 사용법2.1 컨테이너로 Hello World 실행하기$ docker container run diamol/ch02-hello-diamol위의 간단한 커맨드로 도커를 사용하는 워크플로의 핵심을 볼 수 있다.애플리케이션의 패키징, 공유, 실행 의 과정이 포함되어있다.도커에서는 이 과정을 빌드, 공유, 실행 이라고 부른다.아무리 복잡한 애플리케이션도 위의 과정을 거친다.도커를 실행할 수 있는 환경이라면 어디서든 실행가능한 도커 이미지를 만들 수 있다.이것이 도커의 핵심 이점인 이식성 이다.2.2 컨테이너란 무엇인가?도커 컨테이너는 말 그대로 물건(애플리케이션)을 담는 상자(컨테이너)이다.하나의 컴퓨터(호스트) 는 여러개의 상자 (컨테이너) 를 가질 수 있다.각 컨테이너는 독립적인 환경을 ..
도커 교과서 1장 도커 컨테이너와 이미지 이해하기
·
📚 책/도커 교과서
1부 도커 컨테이와 이미지 이해하기1.1 컨테이너가 IT 세상을 점령한 이유도커는 컨테이너라는 경량 단위로 애플리케이션을 실행하는 기능을 제공하는 플랫폼이다.컨테이너는 소프트웨어 분야의 거의 모든 곳에 자리잡은 핵심 기술이다.도커를 사용하게 되면 모든 툴체인이 중앙 집중화돼 작업이 간단해 진다.1.1.1 클라우드 환경으로 이주하기클라우드 환경으로 이주하기 위해서는 IaaS, PaaS 두가지 선택지가 있다.IaaS (Infra As a Service)애플리케이션을 구성하는 각 컴포넌트가 모두 가상 머신에서 독립적으로 동작.이주 과정은 쉽지만 가상 머신의 성능을 완전히 활용하지 못하며 운영비가 비쌈.Paas(Platform As a Service)애플리케이션을 구성하는 각 컴포넌트가 클라우드 서비스 제공자의..
업무에 바로 쓰는 SQL 튜닝 1장 MySQL과 MariaDB 개요
·
📚 책/업무에 바로 쓰는 SQL 튜닝
1장 MySQL과 MariaDB 개요오라클과 MySQL비교(MariaDB 포함)MySQL(MariaDB)스토리지 구조물리적인 DB 서버마다 독립적으로 스토리지를 할당(Shared Nothing)이중화구조 마스터-슬레이브구조가 대부분.물리적으로 여러대의 DB서버에 접속하더라도 동일한 구문이 처리되지 않을 수 있으며, DB 서버 마다 각자의 역할이 부여될 수 있다.조인 알고리즘대부분 중첩 루프 조인(Nested Loop Join)최근 8.0.18 버전 부터 제약적으로 해쉬 조인 제공메모리 사용률사양이 낮은 컴퓨터 환경에서 사용 가능.약 1MB 메모리 환경에서도 사용 가능.오버헤드 작음.Oracle스토리지 구조통합된 스토리지 하나를 공유(Shared Everything)하여 사용공유 스토리지를 사용하므로 어느..
Feign Client 란?
·
1.프로그래밍/Spring
Feign 란?Feign은 Neflix에서 개발된 HTTP Client binder 이다.Feign을 이용하면 HTTP Client를 보다 쉽게 작성할 수 있다.RestTemplate, WebClient , HttpURLConnection (설마 아직도 이걸 직접…?) 을 사용하는것보다 확실히 훨씬 직관적이고 코드도 간결하다.Feign 기초 셋팅의존성 org.springframework.cloud spring-cloud-starter-openfeign@EnableFeignClients@SpringBootApplication@EnableFeignClients// @EnableFeignClients(basePackages = "com.example.clients") 명시적 선언public clas..
Linux에 MiniKube 설치하기
·
1.프로그래밍/개발
Linux에 MiniKube 설치하기시스템 요구사항Minikube를 설치하기 전에 아래 요구 사항 확인.운영체제: Linux (64-bit)CPU: 2개 이상의 CPU 코어RAM: 2GB 이상가상화 지원: VM을 사용하여 Minikube를 실행하는 경우 가상화가 활성화되어 있어야 한다.결과에 vmx 또는 svm이 포함되어 있다면, 가상화가 가능하다는 뜻.$ grep -E --color 'vmx|svm' /proc/cpuinfo시스템 아키텍처 확인먼저 시스템 아키텍처를 확인.$ uname -mx86_64: 64-bit 아키텍처 (일반적인 Intel/AMD 기반 PC)aarch64: ARM 64-bit 아키텍처 (예: Raspberry Pi, 일부 서버)armv7l: ARM 32-bit 아키텍처올바른 kub..
Python requests 모듈 TimeOut 미설정 이슈
·
1.프로그래밍/Python
발단.Airflow 에서 Engine 의 Job 종료에 대한 Pooling 진행,Airflow 에서 HTTP Client 로는 requests 모듈 사용Engine 내부 Hazelcast OutOfMemory 로 인해 다운Engine 의 WAS 프로세스는 살아있음 (unhealthy)Airflow Pooling Task 무한정 진행원인Python 의 request 모듈의 기본 설정에는 Connection TimeOut 설정과 Read TimeOut 에 대한 기본값이 None 이다.즉, Connection 을 맺는 것과 응답을 기다리는 것을 무한정 기다리게 된다.위 처럼 Engine 이 응답을 주지 못할 경우에는 정말 무한정 기다리게 된다.공식문서 내용TCP 3 way 통신 시간의 3배수로 설정하는 것이 ..
Connection Timeout과 Read Timeout
·
1.프로그래밍/개발
Connection Timeout과 Read Timeout의 의미Connection Timeout서버와 클라이언트가 연결되는 데 걸리는 최대 시간. 주로 TCP 연결이 설정되는 3-way handshake에서 발생하는 타임아웃임. 연결이 설정되지 않으면 에러가 발생함.Read Timeout이미 연결된 상태에서 데이터가 주고받는 데 걸리는 최대 시간. 이 시간을 초과하면 데이터를 읽을 수 없는 것으로 보고 에러 발생. 간단히 말해 데이터를 읽는 중에 설정되는 타임아웃임.적절한 타임아웃 값 설정 방법네트워크는 항상 100% 안정적이지 않고, 패킷 유실도 종종 일어날 수 있음.타임아웃을 설정할 때 두 가지를 고려해야 함:네트워크에서 발생하는 패킷 유실이 꼭 장애 상황은 아님.네트워크 문제가 발생하면 빠르게 인..
그림과 실습으로 배우는 도커 & 쿠버네티스 후기
·
📚 책/그림과 실습으로 배우는 도커 & 쿠버네티스
그림과 실습으로 배우는 도커 & 쿠버네티스 후기끄적끄적…오랜만에 책을 한권 완독했다.블로그 글도 다시 쓰기 시작했다.블로그 글은 NHN 아카데미 이후로 작성하지 않았다.취업, 취업 후 회사 적응, 회사 근무지 및 부서 변경, 새로운 부서 적응 …. 이러다 보니 시간이 훌쩍 지나갔다.블로그에 다시 글을 적어야지… 속으로만 생각하고 적을 기회가 도통 생기지 않았다.나의 노션에는 혼자 끄적이는 정리 글들이 점점 쌓여갔다.실무에서 Docker Container 환경에서의 Backend 개발을 하고있다.그러다 보니, 자연스럽게 관심이 가고 공부를 해야겠다고 생각했다.해당 책은 부서의 선임분이 추천해준 입문 서적이다.정말 고마운 선임분이다. 회사 및 지역에 잘 적응할 수 있게 도와주셨고, 개발 지식도 많으셔서 배울..
MyeongDev
'분류 전체보기' 카테고리의 글 목록 (3 Page)