Computer Science31 [Network] HTTP 웹 기본 지식 - 3. HTTP 기본 개념 1. 개요 1.1 HTTP(Hyper Text Transfer Protocol) 최초에는 문서간 링크를 통해 연결할 수 있는 프로토콜로 사용되었으나, 현재에는 모든 것을 전송한다. HTML, TEXT Image, Media, File JSON, XML etc.. 1.2 기반 프로토콜 TCP: HTTP/1.1, HTTP/2 는 TCP 기반이다. UDP: HTTP/3 현재 대부분은 HTTP/1.1을 사용하는 데, HTTP/2, HTTP/3의 사용도 점차 증가 중이다. TCP 통신은 3 way handshake 때문에 신뢰성과 연결성은 보장하지만, 이 과정에 걸리는 시간만큼 속도가 떨어질 수 밖에 없다. 그렇기에 HTTP/3에서는 UDP 프로토콜을 애플리케이션 레벨에서 재설계를 해서 속도를 높혔다. 2. 특징.. 2023. 2. 8. [Network] HTTP 웹 기본 지식 - 2. URI와 웹 브라우저 요청 흐름 1. URI, URL, URN URI(Uniform Resource Identifier)는 URL과 URN을 모두 포함하는 개념으로서 자원의 위치(Locator)와 이름(Name)을 모두 포함한다. URL: 자원이 있는 위치(Locator)를 지정 URN: 자원에 이름(Name)을 부여 위치(Locator)는 변할 수 있지만 이름(Name)은 변하지 않는다. URN은 사실상 잘 사용되지 않는다. 2. URL 분석 포맷 : scheme://[userinfo@]host[:port][/port][/path][?query][#fragment] 사례 : https://google.com/search?q=hello&hl=ko scheme: 주로 프로토콜을 사용하며 어떤 방식으로 자원에 접근할 것인가에 대한 규칙 (.. 2023. 2. 7. [Network] HTTP 웹 기본 지식 - 1. 인터넷과 네트워크 1. OSI 7 계층과 TCP/IP 프로토콜 스택 통신용 규약을 최대한 하나로 통합한 네트워크 구조 OSI 7계층을 통해 네트워크 환경을 물리적인 파트부터 애플리케이션 사용 파트까지 계층으로 구분하여 여러 사람이 쉽게 이해할 수 있도록 했다. 현재는 여기서 하나 더 나아가 TCP/IP 프로토콜 스택 기반으로 구분해서 사용하고 있는데, 이렇게 계층별로 표준화가 되면, 네트워크 프로토콜을 계층(모듈)별로 개발할 수 있다. 이는 객체 지향 패러다임과 비슷하여 객체 지향의 장점인 '유연성'도 가질 수 있다. 2. OSI 7 Layer 계층 5~7 : 상위 계층 - 웹/앱 개발자가 하위 계층을 고려하지 않고 데이터를 표현하는 데 집중한다. 계층 1~4 : 하위 계층 - 데이터를 상대방에게 잘 전달하는 역할을 가지.. 2023. 2. 6. [NoSQL] NoSQL의 개념과 특징, 사례 (RDBMS와 비교) 1. 개념 원래는 Non-SQL 또는 Non-Relational 데이터베이스 종류를 지칭하기 위해 생긴 용어이다. 하지만, IT 업계 전반에 걸쳐 SQL의 활용도가 높기 때문에 NoSQL 데이터베이스인데도 오히려 SQL을 지원하는 경우가 많아지고 있다. 이 때문에 현재는 Not-only SQL의 의미로 쓰이는 경우도 있다. RDBMS의 한계점을 각 NoSQL마다의 해결책을 제시하고 있어 어떤 속성을 가져야 NoSQL이다라고 지칭할 수 없다. 2. 특징 2.1 RDBMS와 비교한 장점 데이터 형식이 자유롭다. * 데이터 타입 * 데이터 길이, 크기 RDBMS에서 데이터의 형식이 테이블로 정해져 있기 때문에 데이터를 Java의 객체 모델에 연결해서 표현하기 힘든 문제(Object-Relation Impeda.. 2023. 2. 6. [Database] ORM(Object Relation Mapping) 1. ORM 개념 이해 JDBC에서 ResultSet과 POJO class를 매핑하는 코드를 매번 짜는 것이 불편해서 만들어진 기술(Library)을 ORM(Object-Relational Mapping)이라고 한다. 객체와 Relational Model(관계형 데이터베이스 모델)을 매핑할 수 있는 기능을 갖고 있다. 하나의 테이블이 하나의 Java Class에 해당하고, FK와 같은 부가적인 기능은 함수로 제공한다. Hibernate로 대표되는 현대 ORM은 단순히 데이터 매핑 뿐만 아니라 데이터의 캐시, 세션, 라이프사이클 관리 기능까지 더해져서 그 기능이 방대하다. 2. JPA ORM의 유용성이 입증되고 나니 Hibernate, MyBatis, TopLink, CoCobase 등 ORM을 구현하는 .. 2023. 1. 24. 이전 1 2 3 4 5 ··· 7 다음