목록전체 글 (134)
PracticeEveryday

2부 URL과 리소스 - 도시의 리소스를 분류하기 위해서 모든 것이 그만의 표준화된 이름을 가지고 있다. Ex) 책은 ISBN 번호를, 버스는 노선 번호를, 은행 계좌는 계좌 번호를, 사람은 사회보장번호 ( 주민등록번호 )를 가진다. => 모두가 이렇게 각기 다른 이름들에 대한 작명 표준에 동의하기 때문에, 도시에 있는 소중한 리소스를 모두 쉽게 공유 할 수 있다. ※ URL : 인터넷의 리소스를 가리키는 표준 이름이다. URL은 전자 정보 일부를 가리키고 그것이 어디에 있고 어떻게 접근 할 수 있는지 알려준다. 2.1 인터넷 리소스 탐색하기 - URL은 브라우저가 정보를 찾는 데 필요한 리소스의 위치를 가리키며, URL을 이용해 사람과 애플리케이션이 인터넷 상의 수십억 개의 리소스를 찾고 공유 할 수 ..

1부 HTTP : 웹의 기초 1장 HTTP 개관 - 전 세계의 웹 브라우저, 서버, 웹 에플리케이션은 모두 HTTP ( Hypertext Transfer Protocol )을 통해 대화한다. HTTP는 현대 인터넷의 공용어다. 이 장을 통해 알아 볼 것 1. 얼마나 많은 클라이언트와 서버가 통신하는지 2. 리소스 ( 웹 컨텐츠 )가 어디서 오는지 3. 웹 트랜잭션이 어떻게 동작하는지 4. HTTP 통신을 위해 사용하는 메시지의 형식 5. HTTP 기저의 TCP 네트워크 통신 6. 여러 종류의 HTTP 프로토콜 7. 인터넷 곳곳에 설치된 다양한 HTTP 구성 요소 1.1 HTTP : 인터넷의 멀티미디어 배달부 - 수십억 개의 JPEG 이미지, HTML 페이지, 텍스트 파일, MPEG 동영상, WAV 은성 ..

디스크 I / O 조작의 이해 - SQLOS 스케줄러에 관리되는 동작 중 하나인 데이터 파일과 트랜젝션 로그 파일 같은 물리 파일에 대한 디스크 I / O조작 에 대해 살펴본다. - DB 버퍼 캐시는 데이터 파일로부터 읽어 들인 데이터 페이지 (또는 인덱스 페이지)를 담는 캐시 영역이다. - 일부 Direct Path Read 메커니즘이 작동하는 경우를 제외하면, 모든 페이지 읽기는 버퍼 캐시를 통해 이루어진다. => 즉, 읽고자 하는 페이지를 먼저 버퍼 캐시에서 찾아보고 없을 때 디스크에서 읽는다. - 디스크에서 읽을 때도 먼저 버퍼 캐시에 적재한 후에 읽는다. - 데이터 변경도 버퍼 캐시에 적재된 페이지를 통해 이루어지며, - 디스크 I/O는 물리적으로 액세스 암(Arm)이 움직이면서 헤드를 통해 이..

CPU 리소스의 최적화 - 이 장에서는 SQL 서버가 CPU 리소스를 효율적으로 사용하기 위해 어떻게 고안되어 있는지에 대해 소개한다. 1.1 멀티 스레드 프로그래밍 ※ 스레드 : 프로그램 내의 처리 실행 단위 혹은 CPU의 이용 단위를 나타내는 단어 ※ 싱글 스레드 프로그래밍 : 일련의 처리를 단일 스레드만으로 직렬 처리하는 프로그래밍 방법 ※ 멀디 스레드 프로그래밍 : 동일 어드레스 공간의 메모리를 공유하면서 병렬로 처리하는 방법 ※ 멀티 태스크 처리 : 다른 애플리케이션 ( 또는 프로세스 ) 의 처리를 다른 CPU에 할당함으로써 복수의 애플리케이션을 효율적으로 처리할 수 있는 구조 ※ 멀티 스레드 처리 : 병렬 처리의 효율을 높이기 위해 하나의 애플리케이션 내의 조작을 복수의 스레드로 분할하고 각각..

Git HEAD // 머리 - git log를 찍었을 때 HEAD라는 단어가 존재한다. - 모든 브랜치에는 HEAD 값이 존재하는 데 HEAD란 해당 브랜치의 마지막 커밋을 뜻한다. => 따라서 HEAD가 특정 커밋에 찍혀 있을 경우 해당 브랜치의 마지막 커밋이 해당 부분이라는 것을 알 수 있게 된다. HEAD는 특정 브랜치의 마지막 커밋에 대한 포인터이다. HEAD -> branch name 다른 브랜치의 HEAD 확인 해보기 - 위의 master branch에서 BE-test이라는 새로운 브랜치를 만들게 되면 git switch -c "BE-test" - 브랜치를 새로 만들게 되면 BE-donation-DH의 commit들이 새로운 branch의 commit이 된다. - 그렇게 되면 BE-donati..

git restore README.md git switch / restore restore 복원하다 checkout : Switch branches or restore working tree files switch : Switch branches restore : Restore working tree friles git switch - switch는 말 그대로 checkout 에서 브랜치를 변경하는 부분만 담당한다. - 이전에는 git checkout Branch_Name 으로 변경하였지만 이젠 Switch로 변경한다. => 명령어만 달라졌고 사용 방법은 같다. git switch develop 'develop' 브랜치로 전환합니다 브랜치가 'upstream/develop'에 맞게 업데이트된 상태입니다..

Git Fetch - pull을 실행하면 원격 저장소의 내용을 가져와 자동으로 병합 작업을 실행하게 됩니다. - 그러나 단순히 원격 저장소의 내용만 확인하고 로컬 데이터와 병함은 하고 싶지 않은 경우 fetch 명령어를 사용할 수 있습니다. - fetch를 실행하면 원격 저장소의 최신 이력을 알 수 있으며 이 경우 가져온 최신 커밋 이력은 이름 없는 브랜치로 로컬에 가져오게 됩니다. => 이 브랜치는 'FETCH_HEAD'의 이름으로 체크아웃도 가능합니다. - 로컬 저장소와 원격 저장소 B에서 진행된 커밋이 있는 상태에서 fetch를 수행하면 아래 그림과 같이 이력이 남습니다. - 이 상태에서 원격 저장소의 내용르 로컬 저장소의 master에 통합하고 싶다면 FETCH_HEAD 브랜치를 merge하거나 ..

Mocha + ES6 - ES6를 사용하는 경우 mocha로 테스트하기 전에 ES5로 번역해주어야 합니다. 1. ES6에 모카를 사용하기 위해서 설치해 줍니다 npm install --save-dev mocha babel-core babel-register yarn add -D mocha babel-core babel-register 2. package.json에 테스트 스트립트를 추가합니다. # package.json "scripts": { "test": "mocha --require babel-core/register ./test/**/*.js" } $ npm test Mocha + ES6 - babel-core, @babel/core간의 충돌 문제가 있다고 함 - babel-core, babel-c..

git clone -b [Git] Git 특정 Branch Clone 하기 Git(깃)을 이용하여 프로젝트 관리시 Master(마스터)가 아닌 Develop(디벨로퍼)으로 생성하여 개발 후 Test 를 위해 Git Clone이 필요한 경우가 있다. 그런 경우 기본적으로 알고 있는 방법으로 Git Clone을 info-lab.tistory.com

HTTP - HyperText Transfer Protocol - W3 상에서 정보를 주고 받을 수 있는 프로토콜 - 주로 TCP를 사용하고 HTTP/3 부터는 UDP를 사용하며, 80번 포트를 사용한다. HTTPS - HyperText Protocol over Secure Socket Layer, HTTP over TSL, HTTP over SSL, HTTP Secure - World Wide Web 웹 통신 프로토콜 HTTP의 보안이 강화된 버전 - 통신의 인증과 암호화를 위해 netscape communications corporation에서 개발했으며, 전자 상거래에서 널리 쓰인다. - 기존 HTTP 레이어에 SSL ( TSL ) 프로토콜을 얹어 평문 데이터를 암호화한다. - 소켓 통신에서 일반 ..