일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- 딥러닝
- 백준가운데를말해요
- 운영체제
- 백준9012
- java
- 냅색알고리즘
- 합성곱연산
- 코딩테스트실력진단
- 가운데를말해요
- 백준온라인저지
- 백준10828
- 백준평범한배낭
- 백준괄호
- 이것이자바다
- 웹개발기초
- 백준
- 백준스택
- 카카오코테
- BOJ
- 이것이자바다9장
- 윤곽선검출
- KT포트포워딩
- 컴퓨터비전
- BOJ1655
- 코드트리
- 2019카카오코테
- 확인문제
- 이것이자바다확인문제
- 스파르타코딩클럽
- 코테
- Today
- Total
목록전체 글 (163)
코딩하는 락커

Target 설정 3개의 애플리케이션 컨테이너로 구성됨 첫번째 컨테이너 - PHP 인터프리터 컨테이너 Laravel PHP 애플리케이션의 소스 코드가 포함된 폴더가 호스트 컴퓨터에 존재함 소스 코드 폴더는 PHP 인터프리터 컨테이너라는 하나의 컨테이너에 노출됨 이 컨테이너는 소스 코드에 접근할 수 있으며 내부에는 PHP가 설치되어 있음 (즉, 소스 코드를 해석하고 들어오는 요청에 대한 응답을 생성할 수 있음) 두번째 컨테이너 - Nginx 웹서버 컨테이너 Nginx 웹 서버가 들어가 있음 이 컨테이너와 웹 서버는 들어오는 요청을 받은 다음 PHP 인터프리터로 이동해서 PHP 인터프리터가 생성한 응답을 요청을 전송한 클라이언트에게 돌려줌 세번째 컨테이너 - MySQL 데이터베이스 MySQL 데이터베이스가 ..

모듈 소개 & "유틸리티 컨테이너"란 무엇인가? 유틸리티 컨테이너: 특정 환경만 포함하는 컨테이너를 의미함 유틸리티 컨테이너에서 환경을 시작할 때 애플리케이션을 시작하지 않음 대신 특정 작업을 실행하기 위해 지정한 명령과 함께 실행함 유틸리티 컨테이너: 왜 사용하는가? 많은 프로젝트와 많은 프로그래밍 언어는 프로젝트 초기 생성시 호스트 컴퓨터의 시스템에 설치할 부가적인 툴이 필요함 이 부분을 유틸리티 컨테이너가 도와줄 수 있음 컨테이너에서 명령을 실행하는 다양한 방법 빈 프로젝트 생성 후 터미널 입력 도커 허브의 공식 node 이미지 실행 $ docker run node 결과 즉시 중지됨 인터렉티브 모드에서 시작해야 하는 이미지이기 때문 인터렉티브 모드로 재시작 몇몇 기본 명령어 실행가능 중요한 점은 노..
보호되어 있는 글입니다.

Docker-Compose: 무엇이며 왜 사용하는가? Docker Compose란? 하나의 구성 파일을 사용하여 다수의 docker build와 다수의 docker run 명령을 대체할 수 있는 도구 모든 서비스, 모든 컨테이너를 즉시 시작하고 모든 필요한 이미지를 빌드할 수 있으며 모든 것을 중지할 수 있는 오케스트레이션 명령 셋 구성(Configuration) 파일을 사용하여 단 하나의 명령어로 전체 다중 컨테이너 애플리케이션을 제어할 수 있음 이미지나 컨테이너, 혹은 Docker File을 대체하는 것이 아님 다수의 호스트에서 다중 컨테이너를 관리하는데에는 적합하지 않음. (하나의 동일한 호스트에서 다중 컨테이너를 관리하는데 좋음) Docker Compose File 작성하기 멀티컨테이너 애플리케이..

Target 앱 & 설정 3가지 빌딩 블록과 컨디션 MongoDB Datebase MongoDB 컨테이너를 제거했다가 다시 생성해도 데이터가 손실되지 않아야 함 액세스를 제한할 수 있어야 함(공식 Mongo 이미지를 사용하여 컨테이너에서 생성된 데이터베이스에 사용자와 비밀번호를 추가) NodeJS REST API Backend Application 백엔드 컨테이너를 제거했다가 다시 생성해도 log 데이터가 손실되지 않아야 함 소스 코드 변경 사항이 즉시 반영되어야 함 React Frontend 소스 코드 변경 사항이 즉시 반영되어야 함 백엔드는 데이터를 저장하고 가져오기 위해 데이터베이스와 통신함 프론트엔드는 백엔드와 통신함 MongoDB 서비스 도커화 하기 MongoDB 컨테이너 실행 --name mo..

10.4 페이지 교체 메모리 과할당over allocating 다중 프로그래밍 정도를 올렸을 때 발생할 수 있는 문제 ex) 40개의 프레임과 10개의 페이지 중 5개만을 사용하는 6개의 프로세스가 있다고 가정 이 경우 10개의 프레임은 남겨 놓고도 높은 CPU 활용률과 처리율을 얻을 수 있음 그러나 특정 데이터 조합에 대해 이 프로세스들이 10페이지 모두를 사용해야 하는 상황이 발생할 수 있음 또한 40프레임만이 존재하는 상황에서 60프레임을 필요로 하게 됨 메모리 과할당의 발생 순서(위 그림 참조) 프로세스가 실행하는 동안 페이지 폴트 발생 운영체제가 필요로 하는 페이지가 보조저장장치에 저장된 위치를 알아냄 그러나 가용한 프레임 목록에 가용한 프레임이 없음을 발견함 (즉, 모든 메모리가 사용중임) 이..

10. 1 가상 메모리 배경 가상 메모리virtual memory는 프로세스 전체가 메모리 내에 올라오지 않더라도 실행이 가능하도록 하는 기법을 말함 가상 메모리의 장점 사용자 프로그램이 물리 메모리보다 커져도 됨 가상 메모리는 물리 메모리로부터 프로그래머 관점의 논리 메모리를 분리해 메인 메모리를 균일한 크기의 저장 공간으로 구성된 엄청나게 큰 배열로 추상화 해 줌 파일과 라이브러리의 공유를 쉽게 해주고 공유 메모리 구현을 가능하게 함 한 프로세스의 가상 주소 공간은 그 프로세스가 메모리에 저장되는 논리적인(가상적인) 모습을 말함 위 그림과 같이 특정 논리 주소는 0번지에서 시작하여 연속적인 공간을 차지함 또한 힙은 동적 메모리를 사용함에 따라 주소 공간상에서 위쪽으로 확장되고, 스택은 함수 호출을 거..

9.3 페이징 지금까지 논의된 메모리 관리는 프로세스의 물리 주소 공간이 연속적이어야 했음 페이징 프로세스의 물리 주소 공간이 연속적이지 않아도 되는 메모리 관리 기법 연속 메모리 할당의 문제를 해결 외부 단편화 문제 해결 단편화된 된 메모리의 압축의 필요성 문제 해결 기본 방법 물리 메모리는 프레임frame이라고 불리는 같은 크기 블록으로 나누어짐 논리 메모리는 페이지page라고 불리는 같은 크기 블록으로 나누어짐 이를 통해 논리 주소 공간은 물리 주소 공간으로부터 완전히 분리되었고, 이 때문에 물리 메모리의 크기가 2^64 바이트보다 적게 장착된 시스템에서도 프로세스는 64비트로 이루어진 논리 주소 공간을 사용할 수 있음 논리 주소 공간은 페이지 번호 p과 페이지 오프셋 d 두 개의 부분으로 분리됨 ..