이전 포스팅에서 TCP에 대해서 많이 부족하다고 느껴, 이번 포스팅을 작성한다. 가장 먼저, 이전 포스팅의 의문점인 “TCP가 패킷을 신뢰성을 지닌 데이터로써 전송을 보장하는 방법은??” 에 대해서 아래와 같이 대답할 수 있다. 흐름제어 오류제어 혼잡제어 이에 대해서 알아보기 위해 Transport Layer와 TCP 그리고 UDP에 대해서 얘기해보자! 이에 대해 알아보는 이유는 아래와 같다. TCP, UDP의 특성을 파악 후, 상황에 따라 적절한 프로토콜을 사용할 수 있기 위해 TCP, UDP Header에 대해 파악하고 성능 개선에 이용하기 위해 Transport Layer : End Point간 신뢰성있는 데이터 전송을 담당하는 계층 쉽게 말해, 데이터의 전달을 담당한다고 생각해도 좋다 신뢰성: 데..
분류 전체보기
해당 게시물은 팀 프로젝트를 진행하는 데에 있어서, 'React를 사용했다'라기보다 'React를 쓰면 뭐가 좋은지, 데이터를 어떻게 다루고 있는지'에 초점이 맞추어져 있는 점 양해 부탁드립니다.. 웹 브라우저 동작 아래 그림은 웹 브라우저가 서버로 요청을 보내고, 응답 받아 화면을 그리는 과정입니다. Backend Time, Frontend Time으로 구분해서 웹 브라우저가 어떻게 화면을 표시하는지 나타냅니다. Backend Time : 렌더링 준비 단계로써, HTML 및 기타 Resources를 수신한다. Frontend Time : 렌더링 실행 단계로, Render Tree를 생성하고, Layout 및 Paint를 시도한다. 각 단계에서 어떤 일이 일어나는지 파악할 수 있어야 브라우저 렌더링 최적..
Internet : 전 세계의 걸쳐, 파일 전송 등의 데이터 통신 서비스를 받을 수 있는 컴퓨터 네트워크의 시스템 참고) 해외와는 바다 밑의 광속케이블을 통해 연결되어 있다 Internet을 통한 네트워크 통신 이러한 거대한 인프라를 통해, 데이터를 디지털 신호로 전달 / 받은 디지털 신호를 다시 데이터로 바꿔가며 네트워크 통신이 이루어진다. 참고) 네트워크 통신을 위해 미리 정해 놓은 공통된 메뉴얼을 “프로토콜”이라고 한다. TCP / IP : 인터넷에서 컴퓨터들이 서로 정보를 주고 받으며 쓰이는 프로토콜의 집합 Application Layer : 특정 서비스를 제공하기 위해 애플리케이션끼리 정보를 주고 받기 위한 계층 ex) 브라우저-Web Server 간 HTTP 요청, 응답을 통해 통신할 때 사용..
Process Thread 동시성 : 한 순간에 여러가지 일이 아니라, 짧은 전환으로 여러가지 일을 동시에 처리하는 것처럼 보이는 것 Process : 자원 할당의 단위 : 프로세서에 의해 실행되는 프로그램 하나의 Process는 반드시 하나 이상의 Thread를 가지고 있다. : Process에 속한 모든 Thread는 Process의 Virtual Memory로 공간이 제약된다. 보통 OS는 Process를 처리하기 위해 CPU에게 Proces 처리 명령을 하는데, 그 때 OS는 (CPU를 위해) Process에게 Virtual Memory(제한된 공간)를 쥐어(할당)주고, CPU에게 넘긴다. 참고) OS는 연산을 수행(Process를 수행)하기 위해서는 이를 관리하고 지원해주기 위한 CPU(연산 수..
JVM 메모리 구조 Java 응용프로그램이 실행되면, JVM은 시스템으로부터 프로그램을 수행하는데 필요한 메모리를 할당받고, 이 메모리를 용도에 따라 여러 영역으로 나누어 관리한다. Method 영역 : Runtime 중 특정 Class가 사용되면, JVM은 해당 Class의 .class파일을 읽고 분석한 결과(클래스에 대한 정보)를 이 곳에 저장한다. 참고) Class variable도 같이 저장된다. Heap 영역 : instance가 생성되는 공간이다. Runtime 중 instance는 모두 이곳에 생성된다. 참고) 즉, instance variable이 생성되는 공간이다. 콜 스택(Call Stack) : 메서드 작업에 필요한 메모리 공간을 제공한다. 메서드 호출 → 콜 스택(stack)에 메서..
h2 버전 확인 spring boot initialzer로 만든 프로젝트의 External Libraies 확인 ⇒ 확인되는 h2 버전과 동일한 버전으로 아래 홈페이지에서 다운로드 https://www.h2database.com/html/download-archive.html 참고) Mac 유저는 Platform-Independent Zip을 다운로드 실행 권한 부여 chmod 755 h2/bin/h2.sh h2 실행 확인 localhost:8082 로 이동 JDBC URL 수정 최초 .mv.db 파일 생성 ⇒ jdbc:h2:~/test_jdbc 생성된 이후부터는 만들어진 파일에 .tcp로 접근 ⇒ jdbc:h2:tcp://localhost/~/test_jdbc