전체 글

전체 글

    [Network] TCP/UDP

    [Network] TCP/UDP

    이번 포스팅에서는 전송계층에서 사용하는 TCP와 UDP에 대해서 알아볼 것입니다. 목차는 다음과 같고 중간중간 '더보기'를 통해 필요한 개념 정리를 했습니다. 전송계층이 무엇이고 존재하지 않으면 어떤 문제가 있는지 알아봅니다. TCP와 TCP 서버의 특징, TCP 헤더의 구조 UDP와 UDP 서버의 특징, UDP 헤더의 구조 전송 계층(TransportLayer)은 무엇이고 왜 존재할까요? 전송 계층은 End Point 간 신뢰성있는 데이터 전송을 담당하는 계층입니다. 전송 계층을 이용함으로써, 포트 번호에 해당하는 프로세스에 데이터를 전달(전송)하는데 데이터를 순차적이고 안정적으로 전달(신뢰성)할 수 있습니다. 1. 데이터를 순차적으로 전송하는 것을 원활히 해줍니다. 만약 순차 전송이 원활히 되지 않으..

    [네트워크] 프로토콜과 OSI 계층

    [네트워크] 프로토콜과 OSI 계층

    프로토콜 (Protocol)원거리의 서로 다른 기기 간의 데이터 교환을 원활히 하기 위해 표준화 시켜놓은 통신 규약입니다.보통 TCP/IP 를 많이 사용하며, 대표적으로 IEEE, ISO 기관에서 프로토콜을 정의합니다.통신을 제어하기 위해 표준 규칙과 절차의 집합으로, H/W, S/W, 문서를 모두 규정합니다.기본 요소구문(Syntax) : 전송하고자 하는 데이터 형식, 부호화, 신호 레벨 규정의미(Semantics) : 두 기기 간 효율적이고 정확한 정보 전송을 위한 협조 사항, 오류 관리를 위한 제어 정보 규정시간(Timing) : 두 기기 간 통신 속도, 메시지 순서 제어 규정 더보기프로토콜 기능단편화와 재결합 :단편화 : 전송에 알맞은 크기로 데이터를 자르는 작업재결합 : 수신 측에서 단편화된 블..

    Web Server와 Web Application Server(WAS)

    Web Server와 Web Application Server(WAS)

    여기서 말하는 "Server"는 소프트웨어적인 관점에서 이야기합니다.  서론Web Server와 Web Application Server는 헷갈리기 쉬운 개념인 것 같습니다. 이번 글에서는 각각의 역할과 왜 웹 서비스 운영 시 함께 사용하는지에 대해 이야기하겠습니다. 알아가기 위한 과정 중 작성하는 것이므로 잘못된 부분은 일러주시면 감사하겠습니다. 목차Web Server와 WAS 간단한 설명과 차이점Web Server의 역할Web Application Server의 역할Apache와 NginX (WS)정리 Web Server와 WAS(Web Application Server)우선, Web Server는 무엇일까요? Web을 위한 Server입니다.Server는 소프트웨어적 개념에서 봤을 때 리소스를 제공..

    JVM이 무엇인가?

    JVM이 무엇인가?

    이번 포스팅은 JVM이 무엇인지 어떻게 등장하게 되었는지 얘기해볼 것입니다. JAVA의 큰 장점 중 "운영체제에 독립적"이라는 점이 있습니다. 이것은 JVM의 역할로 인해 지니게된 장점입니다. JVM(Java Virtual Machine, 자바 가상 머신)은 무엇일까요? JVM이 무엇인지 얘기하기 전에 왜 나오게 됐는지 생각해보고자 합니다. 1. 기계어 현재와 달리 먼 과거로 돌아가서 "컴퓨터"와 처음 의사소통을 할 수 있었던 시절에는 지금처럼 소스코드로 컴퓨터에게 연산을 맡기는게 아닌, 개발자들이 직접 (컴퓨터가 알아먹을 수 있는) 0과 1을 이용해서 나름의 규칙을 통해 명령을 만들었습니다. 만약 1+3 수식 연산을 처리하도록 명령한다면, 2진법을 이용해서 01010101 00000001 0000100..

    멀티 프로세스와 멀티 스레드 (feat. 아파치와 톰캣)

    멀티 프로세스와 멀티 스레드 (feat. 아파치와 톰캣)

    관련 포스팅 프로세스(Process)와 스레드(Thread) Context Switching, IPC 등 개념은 위 포스팅에서 중간에 다뤘으므로 생략하겠습니다. 이번 글에서는 멀티 프로세스와 멀티 스레드에 대해 얘기해보려 합니다. 글의 순서는 다음과 같이 작성합니다. 1. 멀티 프로세스와 멀티 스레드 2. 멀티 스레드를 사용하는 이유 3. Interview: 아파치와 톰캣은 멀티 프로세스인가 멀티 스레드인가? 1. 멀티 프로세스와 멀티 스레드 참고) 위의 프로세스와 스레드에서 설명한 내용과 일부 겹치는 내용이 있을 수 있습니다. 💡💡 멀티 프로세스 멀티 프로세스는 하나의 프로그램을 여러 프로세스로 구성하여 각 프로세스가 하나의 작업을 처리하는 환경입니다. 프로세스는 운영체제로부터 CPU 시간, 주소공간,..

    [JAVA, 백준] 16947. 서울 지하철 2호선

    문제는 아래 링크를 참고해주세요. https://www.acmicpc.net/problem/16947 16947번: 서울 지하철 2호선 첫째 줄에 역의 개수 N(3 ≤ N ≤ 3,000)이 주어진다. 둘째 줄부터 N개의 줄에는 역과 역을 연결하는 구간의 정보가 주어진다. 같은 구간이 여러 번 주어지는 경우는 없고, 역은 1번부터 N번까지 번호 www.acmicpc.net 더보기 문제 풀 때 기억하기 술술 풀린 문제보다 술술 풀리지 않은 문제에 집중한다. 문제 풀 때 지키기 1. 30분 타이머를 재고 고민한다. 2. 고민할 때는 주석 혹은 필기를 하며 본인 생각을 정리한다. 3. 30분이 지나고도 아이디어가 떠오르지 않으면 다른 사람 풀이를 찾아본다. 4. 오답노트 적듯이 나의 전개와 다른 점을 찾아서 부..