Websocket, 웹소켓? 웹소켓은 하나의 TCP 접속에 전이중 통신 채널을 제공하는 통신 프로토콜이다. 클라이언트 애플리케이션과 웹 서버간의 통신을 가능케 하며, 서버와의 실시간 데이터 전송을 용이케 한다. 등장 배경 웹 환경에서 통신이라면 가장 먼저 떠오르는것은? 바로 HTTP이다. 90년대 처음 등장한 이후로 HTTP는 웹 환경에서는 뗄수 없는 존재가 되었다. 하지만 HTTP는 클라이언트가 요청을 보내고 응답을 받으면 연결을 끊는 방식이기 때문에 서버가 변경 사항이 발생했을때 클라이언트에 변경사항을 알릴 방법이 없어 실시간 서비스에 적합하지 않다. 물론, Polling과 Long Polling이라는 개념(주기적으로 클라이언트가 요청을 보내 변경사항을 가져오는 것)이 존재하지만 잦은 요청은 불필요한..
Context Switch(문맥 교환)? CPU가 현재 작업 중인 프로세스에서 다른 프로세스로 넘어갈 때 지금까지의 프로세스의 상태를 저장하고, 새 프로세스의 저장된 상태를 다시 적재하는 작업을 Context Switch(문맥 교환)이라 한다. (프로세스의 정보는 PCB에 저장된다.) 언제 발생하는가? Context Switch가 발생하는 경우는 멀티태스킹, 인터럽트 핸들링, 사용자 모드와 커널 모드 간의 전환까지, 크게 3가지가 존재한다. 멀티태스킹(Multitasking) 실행 가능한 프로세스들이 운영체제의 스케줄러에 의해 조금씩 번갈아가며 수행되는 것을 말한다. 번갈아 가며 프로세스가 CPU를 할당 받는데 이때 Context Switching 한다. 사용자가 체감하기 힘든 속도로 Context Sw..
프로세스(Process)란? 프로세스는 컴퓨터에서 연속적으로 실행되고 있는 컴퓨터 프로그램으로 운영체제에의해 디스크에서 메모리로 적재되어 CPU의 자원을 할당받을 수 있는 것을 말한다. 프로세스 정보는 PCB로 관리한다. 프로세스의 구조 프로세스는 크게 네가지의 영역으로 나뉜다. 프로그램 코드: 프로그래밍 코드 텍스트 영역 데이터(data): 전역 변수들을 저장 스택(stack): 지역 변수 및 함수의 매개변수를 저장 힙(heap): 동적 메모리 할당 영역 스레드(Thread)란? 스레드는 어떠한 프로그램 내에서, 특히 프로세스 내에서 실행되는 흐름의 단위를 말한다. 일반적으로 한 프로그램은 하나의 스레드를 가지고 있지만, 프로그램 환경에 따라 둘 이상의 스레드를 동시에 실행할 수 있다. 스레드의 구조 ..
HTTP (HyperText Transfer Protocol) W3 상에서 서버/클라이언트가 정보를 공유하기 위해 사용하는 프로토콜 애플리케이션 레벨의 프로토콜로 TCP/IP 위에서 동작 상태를 가지고 있지 않는 Stateless 프로토콜이며 클라이언트가 서버에 요청을하는 단방향 통신 Method, Path, Version, Headers, Body 등으로 구성 HTTP Request 클라이언트가 서버에게 특정 Method를 사용하여 요청하는 것으로 Headers(Start Line 포함), Body로 구성 Start Line HTTP Method / Request target / HTTP version HTTP Method - 요청의 목적 GET: 리소스 요청 POST: 내용 전송 PUT: 내용 갱신 ..
- Total
- Today
- Yesterday
- 멀티프로세스
- websocket
- 컴퓨터공학
- REST API
- ORM
- java
- 메신저
- 하이버네이트
- Adapter
- 인스턴스연결
- java persistence api
- context switching
- 의존성 주입
- 접근제어자
- REST ful
- openssh
- os
- Dependency Injection
- full duplex
- Context Switch
- AWS
- ec2
- GOF
- 웹소켓
- observer
- 인스턴스
- Access Modifier
- operating syatem
- react
- 운영체제
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |