반응형

분류 전체보기 702

HOL (Head Of Line) 블로킹 문제

개요 기존의 HTTP의 요청은 큐 처리와 동일하다. 먼저 들어온 요청을 반드시 먼저 응답해주어야 하는 방식으로 동작하는데, 만약, 먼저 들어온 작업 요청에서 지연이 발생하면 이후 들어온 요청들은 먼저 들어온 작업이 끝날 때 까지 함께 대기해야 한다. 이 문제를 HTTP/2에서 어떻게 해결했는지 간단하게 정리한다. HTTP/1.1 HTTP는 TCP 연결을 기반으로 동작하는 프로토콜이다. HTTP는 비연결성 프로토콜이기 때문에 한 번 연결로 한 번의 요청과 응답을 하고 응답이 끝나면 연결을 끊어버린다. 그런데 한 번 연결을 수립할 때 마다 오버헤드가 발생한다. 예를 들어, 전체 작업량을 10이라고 한다면, 연결을 수립하는데만 4의 작업량이 필요하다고 가정하면 한번의 요청과 응답만 하고 연결을 끊기에는 너무 ..

전체에서 조각을 뜻하는 영단어들

piece slice fragment shard sector segment 순간적으로 조각을 나타내는 용어에 어떤 단어를 사용해야 할지 혼란스러움을 느꼈다. 쉽게 외우기 위해 개인적으로 생각하는 각 영단어의 차이를 정리해보았다. 부정확할 수 있으니 유의바람! Piece 케이크와 같이 큰 덩어리에서 잘라낸 부채꼴 모양의 조각은 piece라고 한다 (사전에 조각의 개수를 고려해야만 함). Slice 식빵과 같이 큰 덩어리에서 종이 수준의 면으로 잘라낸 조각은 slice라고 한다 (사전에 조각의 개수를 고려할 필요가 없음). Fragment 유리창을 깨뜨렸을 때와 같이 불규칙적인 모양의 조각을 fragment라고 한다 (의도하지 않은 상황). Shard fragment 중에서 도자기 유물과 같이 과거의 정보를..

메모리 용어 간단 정리 (2/2)

메모리 용어 간단 정리 (1/2) (tistory.com) 대기모드와 수정공간 대기모드 사용중이지만 그대로 파괴해도 상관없는 메모리 영역이다. 요구가 있다면 사용되지만 요구가 없다면 그대로 파괴되는 대기 상태의 것이며, 파일의 읽기 캐시와 프로그램 코드 캐시 등에서 이용된다. 파일은 먼저 캐시에 읽히지만 (대기모드) 여기서 데이터를 쓰면 수정공간으로 바뀌고, 이를 보조기억장치에 저장하면 (flush) 다시 대기모드로 변한다. 여유 공간과 함께 이용가능한 영역으로 분류된다. 수정공간 쓰기 작업이 수행된 공간으로 곧 보조기억장치에 저장될 데이터가 있는 공간이다. 페이지 폴트 (Page Fault) 프로세스에서 필요한 데이터가 가상 주소 공간에는 존재하지만 실제 메모리에는 없는 상황에서 해당 데이터에 접근하는..

컴퓨터 공학/OS 2022.01.14

메모리 용어 간단 정리 (1/2)

메모리 용어 간단 정리 (2/2) (tistory.com) 메모리 용어 간단 정리 (2/2) 메모리 용어 간단 정리 (1/2) (tistory.com) 대기모드와 수정공간 대기모드 사용중이지만 그대로 파괴해도 상관없는 메모리 영역이다. 요구가 있다면 사용되지만 요구가 없다면 그대로 파괴되는 대 remocon33.tistory.com 윈도우 작업관리자 메모리 정보 페이지 (Page) 와 프레임 (Frame) 페이지는 가상 메모리를 사용하는 최소 크기 단위, 프레임은 물리 메모리를 나타내는 최소 크기 단위이다. 페이지와 프레임의 크기는 동일하다. 언어유희를 이용하여, 인셉션 (가상 메모리) 내의 엘런 페이지 (페이지)가 자신과 동일한 모습을 보이는 유리창 (프레임)에 손을 대고 있다고 생각하면 오래 기억할 ..

컴퓨터 공학/OS 2022.01.14

[번역] Git 커밋 메시지를 작성하는 방법

Git 커밋 메시지를 작성하는 방법 - 크리스 빔스 How to Write a Git Commit Message Commit messages matter. Here's how to write them well. cbea.ms diff는 소스코드에서 무엇이 변경되었는지 알려주지만, 커밋 메시지만이 그 이유를 제대로 알려줄 수 있다. 커밋 메시지는 개발자가 좋은 협력자인지 여부를 보여준다. Peter Hutterer 커밋 기록이 구조화되지 않고 일관성이 없기 때문에 사용하거나 관리하는데 많은 시간을 할애하지 않는다. 사용되거나 관리되지 않기 때문에 구조화되지 않고 일관성이 없다. ​ 잘 관리된 로그는 유용하다. git blame, revert, rebase, log, shortlog 그리고 다른 하위 명령어..

컴퓨터 공학 2022.01.13

윈도우에서 원격지 포트 검사 프로그램, tcping

개요 다른 컴퓨터에서 구동 중인 서버에 접속 가능한지 검사하는 프로그램입니다. 검사를 위해 원격지의 IP와 포트 번호를 입력해야 합니다. 설치방법 이 링크에서 tcping.exe를 다운로드 받습니다. (또는 첨부파일 사용) 다운로드 받은 tcping.exe를 C:\Windows\System32로 이동시킵니다. 간단 사용법 윈도우 명령어 프롬프트를 실행합니다. 아래와 같이 IP와 포트 번호를 입력합니다. 사용자가 중단하기 전까지 반복실행 "-t" 명령어를 입력하여 사용자가 를 입력하기 전까지 계속 탐색할 수 있습니다. 연결이 확인된 즉시 종료 "-s" 명령어를 통해 해당 포트에 핑이 한 번이라도 도달하면 즉시 탐색을 종료할 수 있습니다. 핑 요청 날짜 표시 "-d" 명령어를 통해 핑을 요청한 날짜를 표기합..

유틸리티 2022.01.13

[번역] 2021년 웹 어셈블리 현황 설문조사

출처 : https://blog.scottlogic.com/2021/06/21/state-of-wasm.html 작성자 : Colin Eberhardt 번역 : 혼새미로 요약 러스트는 가장 많이 사용되고 웹 어셈블리에 가장 적합한 언어이다. 어셈블리스크립트는 웹 어셈블리 언어에서 두 번째로 적합한 언어이다. 웹 어셈블리는 웹, 서버리스, 게이밍 그리고 컨테이너 화 앱에서 가장 큰 영향력을 가질 것으로 기대된다. 더 나은 디버깅 지원이야말로 가장 많은 사람들이 필요하다고 느끼는 요소이다. 개요 웹 어셈블리 (이하 WA) 2018년 W3C에서 마지막 명세서 초안이 출판된 상대적으로 최신 기술이다. WA는 근본적으로 브라우저에서 다중 언어 지원 및 네이티브에 근접한 속도를 갖는 새로운 런타임으로 탄생하였으며,..

데스크탑에서 JS 또는 TS Playground 앱 (RunJS)

RunJS는 데스크탑에서 JavaScript 또는 TypeScript에 대한 Playground를 제공합니다. 아래 그림과 같이 소스코드를 작성하는 즉시 결과값이 우측에 표출됩니다. 다운로드는 RunJS - A playground for JavaScript and TypeScript 에서 가능합니다. 탭을 추가하거나, 테마를 변경하거나, NPM 모듈을 설치하고자 하는 경우 22,000원 가량의 라이선스를 구매해야 합니다.

TypeScript 4.3 신기능 정리

목차 클래스 오버라이드 플래그 템플릿 문자열 타입 개선 ECMAScrpt #private 클래스 요소 ConstructorParameters를 추상클래스에서 사용 항상 참인 Promise 검사 Import 자동완성 편집기 지원 @link 태그 Enum과 임의의 값 비교 불가 클래스 오버라이드 플래스 부모 클래스를 상속받은 자식 클래스가 부모의 메소드를 재정의할 수 있는데, 이때 어떠한 이유로 부모 클래스의 해당 메소드가 삭제되는 경우, 자식 클래스에서는 별도의 오류를 발생시키지 않아 해당 메소드가 오버라이드된 것인지 아닌지 확인하기 어렵다. class SomeComponent{ show(){ console.log('show a1'); } hide(){ console.log('hide a1'); } } c..

로컬 동영상 파일을 유튜브 썸네일처럼 보는 앱 Video Hub App

점점 하드디스크 용량이 증가함에 따라 로컬 컴퓨터에도 수십-수백 개의 동영상 파일을 보관할 수 있는 환경이 되었습니다. 저 또한 하드디스크 용량이 TB가 넘어가면서 다양한 종류의 동영상 파일을 로컬 컴퓨터에 보관하고 있었습니다. 그런데, 시간이 지나면서 파일이 점점 많아짐에 따라 제가 어떤 동영상을 보관하고 있는지 잊어버리는 경우가 발생합니다 (아마 많은 분들이 비슷한 경험을 했을 것으로 생각합니다). 물론, 정리를 잘 하는 사람들은 동영상 파일을 유형 별로 폴더에 분류를 잘 하여 보관하고 있겠지만, 수십-수백 개가 되는 폴더 및 파일들을 일일이 열어보기는 쉽지 않은 일이 되었습니다. ​ 이러한 문제를 개선하고자, Video Hub App이라는 앱에서는 로컬 컴퓨터에서 보관하고 있는 모든 동영상 파일들에..

유틸리티 2022.01.12
반응형