Computer Science

    [CS] 스레드

    1. 프로세스 (Process) 프로세스란 컴퓨터에서 연속적으로 실행되고 있는 컴퓨터 프로그램이라고 할 수 있다. 즉, 사용자가 작성한 프로그램이 운영체제에 의해 메모리 공간을 할당받아 실행 중인 것을 말한다. 프로세스는 프로그램에 사용되는 데이터와 메모리 등의 자원(리소스, resource) 그리고 스레드로 구성된다. 2. 스레드 (Thread) 스레드란 프로세스 내에서 실제로 작업을 수행하는 주체를 의미한다. 두 개 이상의 스레드를 가지는 프로세스를 멀티 스레드 프로세스라고 한다. 3. 멀티 스레드 (Multi thread) 일반적으로 하나의 프로세스는 하나의 스레드를 가지고 작업을 수행한다. 그러나 멀티 스레드는 하나의 프로세스 내에서 둘 이상의 스레드가 동시에 작업을 수행하는 것을 의미한다. 또한..

    [IIS] HTTP 오류 403.14 - Forbidden

    사이트 실제 경로가 제대로 설정되어 있지 않을 경우 오류가 발생합니다. IIS > 사이트 > 웹사이트 관리 > 고급 설정 > 실제 경로 에서 실제 경로를 확인하세요.

    L4 스위치 쉽게 이해하기 #1 (L4 스위치의 개요)

    https://aws-hyoh.tistory.com/entry/L4-Switch-%EC%89%BD%EA%B2%8C-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0 L4 스위치 쉽게 이해하기 #1(L4 스위치의 개요) 이번 문서 'L4 스위치 쉽기 이해하기'와 '서버 부하 분산 쉽게 이해하기', 다음에 이어질 문서인 'L4/L7 로드밸런싱 쉽게 이해하기'는 L4/L7 Network Swtich인 'F5 Networks' 장비를 기준으로 설명합니다. Alteo aws-hyoh.tistory.com L4 스위치에 대해 이해하기 쉽게 설명해놓은 글이 있어 링크 공유합니다. https://shlee0882.tistory.com/110 OSI 7 계층이란?, OSI 7 계층을 나눈 이유 1. OS..

    배치프로그램이란? (Batch Processing)

    https://limkydev.tistory.com/140 배치프로그램이란? (Batch Processing) 배치프로그램이란? 이번시간은 배치에 대해서 알아보겠습니다. 배치란 무엇일까요? 또는 배치프로그램은 무엇일까요?? 우선 사전에 나온 배치에 대한 정의를 찾아보겠습니다. 일괄 처리(batch pro limkydev.tistory.com 배치 프로그램에 대해 쉽게 설명해놓은 글이 있어 링크 공유합니다.

    인수(Argument), 인자(Parameter)의 차이

    안녕하세요 코북입니다. 요즘 새로운 언어를 공부하는데 인수라는 말이 계속 나오는데 무슨 말인지 정확히 몰라서 기록하려고 합니다. 인자 (Parameter)란 한글로 번역하면 매개변수라는 뜻이다. 즉, 함수를 정의할 때 외부로부터 받아들이는 임의의 값을 의미한다. 인자 값 == 매개변수 == parameter 모두 같은 말입니다. function add(x, y) { retrun x + y; } 다음 코드에서 x와 y, 함수의 정의에서 사용되는 변수를 인자(parameter)라고 한다. 그렇다면 인수(Argument)는? 함수를 호출할 때 사용되는 값들을 인수라고 한다. 예를 들어 위의 함수를 호출한다고 하면 add(3, 4); 여기에서 3과 4의 값이 인수(Argument)이다. 인자 값으로 인수 3과 ..

    개발자 기술면접 준비

    Process와 Thread의 차이 프로세스 : 컴퓨터에서 연속적으로 실행되고 있는 컴퓨터 프로그램 스레드 : 프로세스 내에서 실행되는 여러 흐름의 단위 프로세스는 운영체제로부터 자원을 할당받는 작업의 단위이다. 스레드는 할당받은 자원을 이용하는 실행의 단위이고, 프로세스 내에 여러개 생길 수 있다. 애플리케이션 하나가 프로세스이고, 그 안에서의 분기 처리가 스레드가 되는 셈이다. 비동기 프로그래밍 왜 해야 하는가? JavaScript는 싱글 스레드 언어이기 때문에 한 번에 한 가지 작업밖에 수행하지 못한다. 그래서 자바스크립트로 코드를 구동하면 무언가 순차적으로 일어나게 된다. 이러한 특성으로 싱글 스레드 언어는 치명적인 단점을 갖게 된다. 무거운 작업을 수행 중일 때 그 뒤의 어떤 작업도 진행되지 않..

    Overloading과 Overriding의 차이

    Overloading (오버로딩) 오버로딩이란 하나의 클래스 안에서 같은 이름의 메소드를 여러개 정의(중복 정의)하는 것을 뜻한다. 일반적으로 하나의 클래스 안에 같은 이름의 메소드를 정의하게 되면 에러가 발생하지만, 오버로딩의 조건을 만족했다면 같은 이름의 메소드를 여러 개 정의할 수 있다. Overloading 조건 매개변수의 개수가 달라야 한다. 매개변수의 타입이 달라야 한다. // 오버로딩 조건 : 매개변수의 개수가 다른 경우 public int overloadTest(){ return 0; } public int overloadTest(String test){ return 1; } // 오버로딩 조건 : 매개변수의 타입이 다른 경우 public int overloadTest(String test..

    GET과 POST의 차이 (+ HTTP)

    안녕하세요 코북입니다. Get과 Post에 대해 알기 전에 HTTP에 대해 간단하게 정리하겠습니다. HTTP HyperText Transfer Protocol의 줄임말로 www상에서 사용하는 프로토콜이다. 서버와 클라이언트 사이에 응답을 주고받는 프로토콜로 우리가 흔히 웹브라우저 주소창에 입력하는 웹 주소인 URL을 통해 요청과 응답이 이루어진다. 실제 전송은 TCP를 통해 이루어지며 포트는 80번을 사용한다. HyperText 참조(하이퍼링크)를 통해 한 문서에서 다른 문서로 즉시 접근할 수 있는 텍스트를 의미한다. www (World Wide Web) 인터넷에 연결된 컴퓨터를 통해 사람들이 정보를 공유할 수 있는 가상의 공간이다. HTTP 메소드 HTTP 메소드는 클라이언트가 서버에 요청의 목적 및 ..

    Cookie와 Session의 차이

    Cookie와 Session의 차이 쿠키와 세션을 사용하는 이유? HTTP 프로토콜의 특징이자 약점을 보완하기 위해서 사용한다. Cookie HTTP의 일종으로 사용자가 어떠한 웹사이트를 방문할 경우, 그 사이트가 사용하고 있는 서버에서 사용자의 컴퓨터에 저장하는 작은 기록 정보 파일이다. HTTP에서 클라이언트의 상태 정보를 클라이언트의 PC에 저장하였다가 필요시 정보를 참조하거나 재사용할 수 있다. Session 일정 시간 동안 같은 사용자(브라우저)로부터 들어오는 일련의 요구를 하나의 상태로 보고, 그 상태를 유지시키는 기술이다. 여기서 일정 시간은 방문자가 웹 브라우저를 통해 웹 서버에 접속한 시점부터 웹 브라우저를 종료하여 연결을 끝내는 시점을 말한다. 즉, 방문자가 웹서버에 접속해 있는 상태를..

    개발자 면접 질문(자바, 스프링)

    OOP란 ? 데이터를 객체로 취급하여 프로그램에 반영한 것이며, 순차적으로 프로그램이 동작하는 기존의 것들과는 다르게 객체의 상호작용을 통해 프로그램이 동작하는 것을 말합니다. 캡슐화, 다형성, 상속 을 이용하여 코드 재사용을 증가시키고, 유지보수를 감소시키는 장점을 얻기 위해서 객체들을 연결 시켜 프로그래밍 하는 것 입니다. 자바의 메모리 영역(간단하게 설명) 1. 메서드 영역 : static 변수, 전역변수, 코드에서 사용되는 Class 정보 등이 올라간다.코드에서 사용되는 class들을 로더로 읽어 클래스별로 런타임 필드데이터, 메서드 데이터 등을 분류해 저장한다. 2. 스택(Stack) : 지역변수, 함수(메서드) 등이 할당되는 LIFO(Last In First Out) 방식의 메모리 3. 힙(H..