• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
[DevOn 2013] Dynamic web proxy
 

[DevOn 2013] Dynamic web proxy

on

  • 883 views

 

Statistics

Views

Total Views
883
Views on SlideShare
883
Embed Views
0

Actions

Likes
0
Downloads
7
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    [DevOn 2013] Dynamic web proxy [DevOn 2013] Dynamic web proxy Presentation Transcript

    • 자바카페 OPEN 세미나 in DevOn 2013 Dynamic Web Proxy 어떻게 구현하나요? JavaCafe 김흥래
    • 발표자 : 김흥래 NAVER INS에서 그룹웨어를 개발하고 있습니다. 자바카페(JAVACAFE) 커뮤니티에서 운영진으로 활동하고 있습니다. hrkim3468@gmail.com
    • Proxy Overview
    • Proxy를 어디에 사용할까? • Web Server 앞쪽 Cache 용도 (Web Cache) • 서비스의 접근 정책 적용 (사이트 차단) • 네트워크 Access 로깅 • 다른 정보를 빼낼 목적 • IP 추적을 피할 목적 • 지역 구분을 회피 할 목적
    • Proxy의 두가지 측면?
    • Proxy를 어디에 사용할까? • Web Server 앞쪽 Cache 용도 (Web Cache) • 서비스의 접근 정책 적용 (사이트 차단) • 네트워크 Access 로깅 • 다른 정보를 빼낼 목적 • IP 추적을 피할 목적 • 지역 구분을 회피 할 목적
    • Proxy를 어디에 사용할까? • Web Server 앞쪽 Cache 용도 (Web Cache) • 서비스의 접근 정책 적용 (사이트 차단) • 네트워크 Access 로깅 • 다른 정보를 빼낼 목적 • IP 추적을 피할 목적 • 지역 구분을 회피 할 목적
    • Proxy Server
    • Forward Proxy Server
    • Reverse Proxy Server
    • Open Proxy Server
    • Web Proxy
    • Web Proxy (Http Proxy)
    • Http Security Proxy
    • API Gateway
    • API Gateway
    • API Gateway
    • Web Browser ? Web Proxy ?
    • Web Browser
    • Web Proxy
    • Http Proxy Internal
    • Basic Http Proxy • URLConnection • JDK 기본 API • java.net.HttpURLConnection • Since : JDK 1.1
    • Basic Http Proxy
    • Advanced Http Proxy
    • Apache Http Components • Http Protocol 통신을 지원하는 자바 기반의 Component • Http 기반의 클라이언트 및 서버 프로그램 개발 가능 HttpClient, HttpCore 라이브러리로 구성 • 2001년부터 개발되기 시작한 안정화 된 라이브러리 • Apache Commons 프로젝트에서 독립 프로젝트로 승격
    • Apache Http Components • HttpComponents Core • • • Low Level의 HTTP 전송 컴포넌트 HTTP 기반의 Server와 Client 구현 가능 Blocking I/O와 Non-Blocking I/O 지원 • HttpComponents Client • • HttpCore를 이용하여 구현한 HTTP 기반의 Client Blocking I/O 기반 • HttpComponents AysncClient • • • HttpCore NIO를 이용하여 구현한 HTTP 기반의 Client Non-Blockin I/O 기반 현재 Beta 버전임 • Commons HttpClient (legacy) • 과거 3.0 기준의 라이브러리
    • Http Core Http Client HTTP Component는 크게 2가지의 모듈로 구성되어 있다.
    • HttpCore 라이브러리 • • • • Low Level HTTP 라이브러리 Blocking I/O 기반 기술 제공 Non-Blocking I/O 기반 기술 제공 HTTP 1.1 프로토콜 완벽 지원
    • HttpCore 라이브러리 • HttpCore • Blocking I/O 기반의 Http 컴포넌트 • httpcore-4.2.3.jar • HttpCore NIO • Non-Blocking I/O 기반의 Http 컴포넌트 • httpcore-nio-4.2.3.jar
    • HttpClient 라이브러리 • HttpCore를 기반으로 만든 Client-Side HTTP 라이브러리 • Http 1.1 프로토콜이 지원하는 모든 메소드 구현 (GET, POST, PUT, DELETE, HEAD, OPTIONS, TRACE) • 기본적으로 Blocking I/O 기반의 동작방식을 가진다. • HTTP 메시지를 전송 및 수신이 가능하다. • 손쉬운 Http Proxy 구성이 가능하다. • URI Redirect 동작이나 HTML 랜더링이 불가능하다. • Javascript 실행이 불가능하다. • Web Browser가 아니다.
    • HttpClient 라이브러리 • HttpClient • Client-side HTTP 통신 지원 • httpclient-4.2.3.jar • HttpMime • HttpClient 모듈을 지원하기 위한 용도 • MIME Encoding • httpmime-4.2.3.jar • HttpClient Cache • HttpClient 모듈에 Cache 기능을 추가한 확장 모듈 • Ehcache, Memcached • httpclient-cache-4.2.3.jar
    • HttpClient 라이브러리
    • HttpClient 라이브러리
    • HttpClient 라이브러리
    • HttpClient 라이브러리
    • HttpClient 라이브러리
    • HttpClient 라이브러리
    • Http Core Http Client
    • DEMO
    • Thank you 자바카페는 언제나 열려있습니다.