웹 사이트의 빠른 로딩을 위한 프론트 엔드 최적화 기법과 더불어 알아두어야 할 HTTP 프로토콜 최적화를 언급하며, 최근 발표된 HTTP/3를 소개합니다.
HTTP/3는 "Hyper Text Transfer Protocol over QUIC"의 내용을 근간으로 UDP의 장점을 HTTP에 활용한 버전입니다.
HTTP/3를 알기 위해서는 QUIC에 대한 이해와 함께, 기존 버전인 HTTP/2에서 어떤 부분이 개선되었는지에 대한 이해가 동시에 필요합니다.
Chrome을 활용한 웹 성능 비교 예제들은 HTTP/3의 기술들을 빠르게 이해하는 데 도움이 될 것입니다.
웹 사이트의 빠른 로딩을 위한 프론트 엔드 최적화 기법과 더불어 알아두어야 할 HTTP 프로토콜 최적화를 언급하며, 최근 발표된 HTTP/3를 소개합니다.
HTTP/3는 "Hyper Text Transfer Protocol over QUIC"의 내용을 근간으로 UDP의 장점을 HTTP에 활용한 버전입니다.
HTTP/3를 알기 위해서는 QUIC에 대한 이해와 함께, 기존 버전인 HTTP/2에서 어떤 부분이 개선되었는지에 대한 이해가 동시에 필요합니다.
Chrome을 활용한 웹 성능 비교 예제들은 HTTP/3의 기술들을 빠르게 이해하는 데 도움이 될 것입니다.
Rethink Storage: Transform the Data Center with EMC ViPR Software-Defined Sto...EMC
This white paper discusses the evolution of the Software-Defined Data Center and the challenges of heterogeneous storage silos in making the SDDC a reality.
node.js를 처음 접하는 개발자를 위한 스터디 자료입니다.
실습 위주로, 간단한 웹 페이지를 만들어 보는 것을 목표로 하며,
express를 활용하기에 앞서, node.js 기본 API만으로 GET/POST 처리 방식을 알아봅니다.
내용의 깊이가 있지는 않으며, 단지 node.js의 입문을 위한 가벼운 수준으로 내용이 구성되었습니다.
<kor>
모바일 안드로이드에서 네트워크 상태 조회하는 방법
웹 소스 가져오는 방법
XML, DOM파서 사용하는 방법
<eng>
Checking Network at Mobile Android Method
Getting Web Code Method
XML, DOM Parsing Method
4. • MS FrontPage 제작을 지원하고 웹 서버 기능을 확장하는 프로그램과 스크립트 집합
(https://www.microsoft.com/korea/technet/prodtechnol/
sharepnt/proddocs/admindoc/
glossary.mspx#frontpageserverextensions)
• RPC를 HTTP Post 요청 위에 구현
8. 역사
• Distributed Authoring
• Versioning
• 1999 RFC 2518(HTTP Extensions for Distributed Authoring)
• 2002 RFC 3253(Versioning Extensions to WebDAV)
• 2007 RFC 4918(HTTP Extensions for Web Distributed Authoring and Versioning)
• 80, 443 Port
• 짐 화이트헤드, 팀 버너스 리
• 팀 버너스 리의 최초의 웹 브라우저 월드와이드웹은 웹 페이지를 보고 편집하는 것이 가능했다!
9. WebDAV 새로운 HTTP 메서드
• PROPFIND: 리소스의 속성을 읽는다
• PROPATCH: 한 개 이상의 리소스에 대한 한 개 이상의 속성을 정의한다
• MKCOL: 콜렉션을 생성
• COPY: 리소스나 리소스의 집합을 복사
• MOVE: 리소스나 리소스의 집합을 이동
• LOCK: 하나 이상의 리소스를 잠금
• UNLOCK: 잠긴 리소스 해제
19. 잠금 지원
• 리소스 소유자만 쓸 수 있게 배타적 쓰기 잠금
• 여러 사람으로 이루어져 있는 그룹이 하나의 문서를 작업 할 수 있는 공유된 쓰기 잠금
• PROPFIND 메서드를 통해 지원할 잠금과 형식 결정
• LOCK, UNLOCK
• 저자를 식별하기위해 다이제스트 인증 요구
• 잠금이 승인되면 도메인 전체에서 유일한 토큰을 클라이언트에 반환
• (RFC 2518 6.4 opaquelocktoken Lock Token URI Scheme)
21. UNLock 메서드
UNLOCK /ch-publish.fm HTTP/1.1
Host: minstar.inktomi.com
User-Agent: Mozilla/4.0 (compatible; MSIE 5.0;
Windows NT)
Lock-Token:
opaquelocktoken:*********
HTTP/1.1 204 OK
Server: Microsoft-IIS/5.0
Date: Fri, 10 May 2002 20:56:18 GMT
• 다이제스트 인증, Lock-Token 맞아
야 성공
• 표 19-1 LOCK과 UNLOCK 메서드의
상태 코드
22. 속성과 META 데이터
• 동적 수정되는 속성(Live 속성)
• e.g., 저작자, 수정 일시, 내용 등급…
• 거의 변하지 않는 속성(Dead 속성)
• e.g., Content-type
• PROPFIND, PROPPATCH로 HTTP를 확장해서 속성의 발견과 수정을함
23. PROPFIND 메서드
PROPFIND /ch-publish.fm HTTP/1.1
Host: minstar.inktomi.com
User-Agent: Mozilla/4.0 (compatible; MSIE 5.0; Windows NT)
Depth: 0
Cache-Control: no-cache
Connection: Keep-Alive
Content-Length: 0
HTTP/1.1 207 Multi-Status
Server: Microsoft-IIS/5.0
<?xml version="1.0"?>
<a:multistatusxmlns:b="urn:uuid:********/"
xmlns:c="xml:" xmlns:a="DAV:">
<a:response>
<a:href>http://minstar/ch-publish.fm </a:href>
<a:propstat>
<a:status>HTTP/1.1 200OK</a:status>
<a:prop>
<a:getcontentlength b:dt="int">1155</
a:getcontentlength>
......................
<a:ishidden b:dt="boolean">0</a:ishidden>
<a:iscollection b:dt="boolean">0</a:iscollection>
</a:prop>
</a:propstat>
</a:response></a:multistatus>
• 모든 속성과 그 값을 요청
• 선택된 속성과 그 값의 집합을 요청
• 모든 속성의 이름을 요청
• e.g., 디렉터리의 목록, 그안의 모든 개
별 엔터티의 속성까지 한큐 가능
28. COPY/MOVE 메서드
{COPY,MOVE} /publishing HTTP/1.1
Destination: http://minstar/pub-new
Depth: infinity
Overwrite: T
Host: minstar
HTTP/1.1 201 Created
Server: Microsoft-IIS/5.0
Date: Wed, 15 May 2002 18:29:53 GMT
Location: http://minstar.inktomi.com/pub-new/
Content-Type: text/xml
Content-Length: 0
• Destination 헤더
• Depth가 0이면 해당 리소스만
• Depth infinity는 MOVE만 가능
• Overwirte가 T이고 해당 Destination이 있으면 DELETE 후
에 해당 메서드 실행
• Overwrite가 F이고 해당 Destination이 있으면 무조건 실패
• 해당 리소스를 복제하면 속성도 복제됨
• 복제시 추가로 속성을 같이 기술 가능
• 표 19-3 MKCOL, DELETE, COPY, MOVE 메서드에 대한 상
태코드
29. 향상된 HTTP/1.1 메서드
• WebDAV는 원래 HTTP의 DELETE, PUT, OPTIONS 의미를 수정함
• GET, POST, HEAD는 그대로
• PUT
• if 헤더를 같이 기술해서 잠금 토큰을 맞춘후 컨텐츠를 사이트에 전송
• OPTIONS
• 응답에 지원 클래스 헤더가 있다
• class 1: RFC 2518의 모든 MUST 요구 사항 지원
• class 2: class 1 + LOCK관련 스펙 지원