💻 Computer Science

클라이언트가 HTTP 프로토콜을 이용해 서버로 요청을 보내는 방법인 HTTP Method에는 크게 GET 방식과 POST 방식이 있다. 이 둘에 대해 알아보자. GET, POST GET은 가져온다. POST는 수행한다. GET은 서버에서 데이터를 조회하기 위해 사용하는 메서드이다. POST는 서버에 데이터를 수정하거나 새로 추가하기 위해 사용하는 메서드이다. 둘의 가장 큰 차이점은 데이터를 전송하는 방식이다. GET과 POST 메서드 둘 다 데이터를 서버로 보내야 하는데, GET은 Header에 POST는 Body에 데이터를 포함시켜 전송한다. GET GET은 요청을 전송할 때 필요한 데이터를 URL에 쿼리 스트링을 통해 전송한다. 쿼리 스트링이란 URL 주소 끝에 ? 뒤에 붙는 파리미터들을 말한다. e..
트리 트리(Tree)란? 트리는 부모노드와 자식노드로 이루어진 계층적인 구조를가지며, 무방향 그래프의 일종이자 사이클이 없는 자료구조이다. 트리는 정점(Vertex)과 간선(Edge)으로 이루어진 그래프의 일종이다. (그래프 > 트리) 트리의 용어 노드(node) : 트리를 구성하는 정점. ex) a,b,c,d,e,f,g 간선(edge,link) : 각 노드간 연결하는 선 루트 노드(root node) : 트리의 최상위 노드. 트리는 하나의 루트 노드만을 가진다. ex) a 리프 노드(leaf node) : 트리의 최하위 노드. ex) d,e,f,g 내부 노드(internal node) : 최소 1개 이상의 하위 노드를 갖는 노드. ex) a,b,c 부모 노드(parent node) : 하위 트리를 가지..
재귀함수 재귀함수는 함수 안에 자신의 함수를 다시 호출하는 함수를 말한다. 재귀함수는 자신의 로직을 내부적으로 반복하다가, 일정한 조건이 만족되면 함수를 이탈하여 결과를 도출한다. 재귀함수는 스택 프레임을 사용해 작동한다. 스택 프레임에 저장되는 정보는 다음과 같다. 매개변수 정보 지역변수 정보 복귀 주소 그렇다면 재귀함수가 어떻게 작동하는지 코드를 통해 알아보자. 다음은 일반적으로 재귀함수를 표현하는 패턴이다. class DFS { public static void dfs(int n) { if (//재귀 탈출 조건) { return; } else { dfs(//탈출을 위한 반복 조건); } } } 예시 코드이다. class DFS { public static void dfs(int n) { if (n ..
HTTP Hyper Text Transfer Protocol의 약어 WWW 서버와 WWW 클라이언트 간의 통신을 수행하는 데 사용하는 네트워크 프로토콜 WWW 서버로부터 정보를 취득할 때 HTTP 프로토콜을 사용해 통신한다. HTTP는 달라고 요청된 데이터에 데이터 속성(정적 이미지, 텍스트 등)을 헤더로 붙여 반환한다. 일반적으로 80번 통신 포트 사용 HTTP에 의한 파일 전송은 요청에 대한 응답을 처리한 후 연결이 끊어지므로 여러 페이지에 걸쳐 처리해야 할 경우 페이지 간 정보를 유지할 수 없다는 단점이 있었지만, HTTP 1.1에서 연결을 끊지 않은 채 여러 요청을 계속 수행할 수 있도록 기능이 확장되었다. HTTP/2는 하나의 연결 내 동시에 여러 개를 요청할 수 있도록 하는 등 효율성을 높이고..
인터넷 TCP/IP라는 패킷 통신 유형의 네트워크 프로토콜을 이용해 전 세계 규모로 서로 연결한 거대한 컴퓨터 네트워크 현재 WWW(World Wide Web)나 전자 메일 같은 서비스가 주로 사용되고 있다. ISP(Internet Serivces Provider)라는 접속 사업자가 개인이 인터넷에 접속할 수 있도록 연결해준다. 인터넷에서는 각 네트워크를 서로 연결하는 라우터가 물통 릴레이처럼 패킷을 중계해 데이터를 주고 받는다. ISP Internet Services Provider의 약어 인터넷 연결을 제공하는 서비스 공급자 전화 회선이나 전용 회선을 사용해 일반 사용자의 요청을 받아 인터넷에 연결한다. 과거 : 아날로그 모뎀을 사용한 다이얼업 접속 방법 사용 최근 : ADSL, 광케이블과 같은 상시..
DNS Domain Name System의 약어 도메인 이름(컴퓨터 이름)으로 IP 주소를 알아내는 서비스 DNS 서비스가 실행되고 있는 컴퓨터를 DNS 서버라고 하며, 서버 내에 도메인 이름과 IP 주소가 있는 데이터베이스를 관리한다. DNS 서버에게 물으면 데이터베이스를 검색해 도메인 이름에 해당하는 IP 주소를 반환해준다. → 클라이언트는 이 IP 주소를 기반으로 통신 DHCP Dynamic Host Configuration Protocol의 약어 컴퓨터에 IP 주소나 서브넷 마스크 같은 네트워크 관련 설정을 자동으로 수행하는 서비스 DHCP를 사용하는 네트워크 환경에서 클라이언트가 요청하면 해당 네트워크를 이용하기 위한 각종 설정과 사용할 수 있는 IP 주소를 발급한다. → 네트워크 접속에 필요한..
트랜잭션 (Transaction) 트랜잭션이란 데이터베이스의 상태를 변화시키기 해서 수행하는 작업의 단위를 뜻한다. 작업의 완전성 보장 사용자의 작업셋을 모두 완벽하게 처리(커밋)하거나 처리하지 못하면 원상태로 복구(롤백) MySQL 스토리지 엔진 SQL 엔진 vs 스토리지 엔진 MyISAM InnoDB memory InnoDB 요즘은 다 InnoDB를 사용하는 추세이다. 트랜잭션 지원 FK → 관계형 데이터 베이스 사용 가능 버퍼링 : 작업을 Buffer pool에 쌓아두었다가 한번에 처리 Database Lock Lock 단어 그대로 "잠금"의 의미를 갖는다. 하나의 데이터를 동시에 여러 명이 조작할 수 없도록 잠그는 것으로, 동시성(concurrency)를 보장한다. MySQL 엔진락과 InnoDB..
NIC Network Interface Card의 약어 컴퓨터에 네트워크를 연결하기 위한 확장 카드 두번째 링크 계층에서 작동하는 네트워크 구성 요소 다른 말로 "LAN 보드", "LAN 카드", "LAN 어댑터"라고 표현하기도 한다. NIC는 변환기 역할을 해서 케이블에서의 단순 전기 신호를 디지털 신호로 변환해 컴퓨터에 전송된다. 컴퓨터에 장착된 NIC에 LAN 케이블을 연결해 컴퓨터와 네트워크를 연결한다. LAN 케이블 각 컴퓨터를 네트워크에 연결하기 위해 사용하는 케이블 전기 신호로 변환된 통신 데이터가 전송되는 경로로, LAN 케이블을 연결해 컴퓨터끼리 데이터를 주고받을 수 있다. 사용하는 네트워크 규격에 따라 LAN 케이블의 종류가 다르다. 리피터 OSI 참조 모델 1계층인 물리 계층에서 동작..
an2z
'💻 Computer Science' 카테고리의 글 목록