본문 바로가기

개발 공부/CS6

Web socket 서문 Drello 프로젝트를 진행하면서 이제 다른 사람들과 실시간으로 Drello를 같이 사용할 수 있는 기능을 설계하기 위해 Django Channels란 프로젝트를 이용하기로 했다. 해당 프로젝트를 공부하면서 내가 잘 모르는 CS가 많았다. 그 중에서 하나인 Web socket에 관해 공부한 내용을 정리한 것이다. Socket 웹 브라우저가 데이터를 전송할 때는 OS의 Socket이라는 구조를 사용한다. 웹 브라우저는 OS에 의뢰해서 Socket을 만들어 통신한다. Socket을 작성하면 Socket buffer(데이터를 한 곳에서 다른 한 곳으로 전송하는 동안 일시적으로 그 데이터를 보관하는 메모리의 영역이다)라는 상자가 만들어진다. Socket buffer에는 송신 buffer와 수신 buffer.. 2021. 6. 29.
Docker 서문 CS를 공부하다가 가상화와 관련하여 가상 머신과 컨테이너에 대한 글을 읽게 되었고 Docker에 대해 좀 더 찾아본 정보를 정리한 글이다. 가상화 컴퓨터 시스템에서 물리적 자원을 추상화하는 것이라 정의할 수 있다. 좋은 예시를 들자면 OS(운영체제)도 가상화 기술 중 하나라고 볼 수 있다. OS의 커널에 의해 하드웨어가 추상화되면서, 컴퓨터에 연결된 기억 장치나 네트워트를 통한 데이터 교환이 하드웨어를 의식하지 않고 이루어지고 있다. 거기에 OS는 가상 메모리를 사용해 프로세스 및 OS 커널의 메모리 공간을 분하므로, 하나의 프로그램이 실패한다고 시스템 전체에 영향을 끼치지 않는다. 가상화가 해결한 문제 모든 기술은 필요하기 때문에 개발된다. 즉, 가상화 또한 어떤 문제를 해결하기 위해 개발된 기술.. 2021. 6. 23.