Engineering14 [Web] HTTP - 4. HTTP 메소드(method) 1. API URI의 좋은 설계URI 설계할 때, 가장 중요한 것은 '리소스(resource)의 식별' 1.1 리소스란동작을 제외한 자원 그 자체를 리소스라 한다. 회원 등록 시스템을 생각해보면, 회원을 등록하고 수정하고 삭제하는 행위는 리소스가 아니다. 오직 회원이 리소스가 된다. (리소스의 대부분은 '명사'이다) 1.2 리소스 기반 회원 관리 URI 설계동작은 HTTP 메소드로 구분(ex. GET, POST, PUT 등)회원 목록 조회 : /members회원 조회 : /members/{id}회원 등록 : /members/{id}회원 수정 : /members/{id}회원 삭제 : /members/{id}Tip. 계측 구조상 상위 자원을 컬렉션으로 보고 복수단어 사용 권장 (ex. member -> me.. 2023. 2. 8. [Web] HTTP - 3. HTTP 기본 개념 1. 개요1.1 HTTP(Hyper Text Transfer Protocol)최초에는 문서간 링크를 통해 연결할 수 있는 프로토콜로 사용되었으나, 현재에는 모든 것을 전송한다.HTML, TEXTImage, Media, FileJSON, XMLetc.. 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. 특징2.1 클라이언트.. 2023. 2. 8. [Web] HTTP - 2. URI와 웹 브라우저 요청 흐름 1. URI, URL, URNURI(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: 주로 프로토콜을 사용하며 어떤 방식으로 자원에 접근할 것인가에 대한 규칙 (ex. htt.. 2023. 2. 7. [Web] HTTP - 1. 인터넷과 네트워크 1. OSI 7 계층과 TCP/IP 프로토콜 스택통신용 규약을 최대한 하나로 통합한 네트워크 구조OSI 7계층을 통해 네트워크 환경을 물리적인 파트부터 애플리케이션 사용 파트까지 계층으로 구분하여 여러 사람이 쉽게 이해할 수 있도록 했다.현재는 여기서 하나 더 나아가 TCP/IP 프로토콜 스택 기반으로 구분해서 사용하고 있는데, 이렇게 계층별로 표준화가 되면, 네트워크 프로토콜을 계층(모듈)별로 개발할 수 있다. 이는 객체 지향 패러다임과 비슷하여 객체 지향의 장점인 '유연성'도 가질 수 있다. 2. OSI 7 Layer계층 5~7 : 상위 계층 - 웹/앱 개발자가 하위 계층을 고려하지 않고 데이터를 표현하는 데 집중한다.계층 1~4 : 하위 계층 - 데이터를 상대방에게 잘 전달하는 역할을 가지며, .. 2023. 2. 6. [ MySQL 아키텍처 ] 2. InnoDB 스토리지 엔진 아키텍처 (2) InnoDB 스토리지 엔진 아키텍처 (2) 4. 잠금 없는 일관된 읽기 5. 자동 데드락 감지 6. 자동화된 장애 복구 InnoDB 스토리지 엔진 전체 구조 InnoDB는 MySQL에서 사용할 수 있는 스토리지 엔진 중 유일하게 레코드 기반의 잠금 기능을 제공하기 때문에 안정적으로 높은 동시성 처리가 가능하며, 성능 또한 우수하다. 4. 잠금 없는 일관된 읽기(Non-Locking Consistent Read) InnoDB 스토리지 엔진은 MVCC 기술을 이용해 잠금을 걸지 않고 읽기 작업을 수행한다. 잠금을 걸지 않기 때문에 InnoDB에서 읽기 작업은 다른 트랜잭션이 갖고 있는 잠금을 기다리지 않고, 읽기 작업이 가능하다. 격리 수준이 SERIALIZABLE이 아닌 READ_UNCOMMITTED나 R.. 2022. 10. 5. 이전 1 2 3 다음