사용자 경험 극대화를 위한 웹 서버 아키텍처

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Favorites, Groups & Events

    사용자 경험 극대화를 위한 웹 서버 아키텍처 - Presentation Transcript

    1. 사용자 경험 극대화를 위한 웹 서버 아키텍처 07년 2월 15일 웹플랫폼개발팀 이희승 본 발표 자료는 NHN의 정책과 직접적 관련이 없습니다.
    2. 발표자: 이희승 http://gleamynode.net/  Apache Software Foundation  – Apache MINA PMC Chair ...2006/10/25 – Apache Directory PMC Member ...2005/03/17 – Committer ...2004/10/07 NHN 웹 플랫폼 개발팀  – 프로토콜 서버 및 컨테이너 개발 2
    3. 목차 RIA의 재등장  RIA 통신 기술  새로운 웹 서버 구조  현실적 문제  결론  3
    4. 목차: RIA의 재등장 RIA의 재등장  – 배경 – 사례 RIA 통신 기술  새로운 웹 서버 구조  현실적 문제  결론  4
    5. 새로운 웹 어플리케이션의 등장 Rich Internet application ...1998  – 웹의 접근성 · 친근함 유지 – Client-Server의 풍부한 UI 결합 Web 2.0 ...2004  – 웹 브라우저 · 플래쉬의 플랫폼화 • Dynamic HTML • AJAX 5
    6. RIA 도입 사례: Zimbra Collaboration Suite 6
    7. RIA 도입 사례: Meebo 7
    8. RIA 도입 사례: Amazon Diamond Search 8
    9. 목차: RIA 통신 기술 RIA의 재등장  RIA 통신 기술  – AJAX – Comet – 사용 사례 새로운 웹 서버 구조  현실적 문제  결론  9
    10. RIA 통신 기술: AJAX Asynchronous Javascript and XML  페이지의 리로딩 없음  Javascript로 background에서 HTTP 요청  텍스트 포맷 데이터 교환  – XML – XHTML – JSON 10
    11. RIA 통신 기술: AJAX 11
    12. RIA 통신 기술: Comet 서버 푸시 기술  보이지 않는 IFrame  – HTTP 접속을 항상 유지 – 주고 받을 데이터가 있을 때만 전송 – 접속이 끊기지 않을 정도로 빠르게 낮은 Latency (vs. polling)  12
    13. RIA 통신 기술: Comet 13
    14. RIA 통신 기술: Comet 사용 사례 채팅  – Meebo 문서 협동 저작  – Google Docs & Spreadsheets 실시간 정보 수신  – 주가 정보 – 교통 정보 14
    15. RIA 통신 기술: Event Source의 다양화 클라이언트 · 웹 브라우저  – 사용자의 UI 상호 작용 다른 사용자  – 채팅 외부 시스템  – 교통 관제 시스템 15
    16. 목차: 새로운 웹 서버 구조 RIA의 재등장  RIA 통신 기술  새로운 웹 서버 구조  – 기존 구조 – 새로운 구조 현실적 문제  결론  16
    17. 기존의 웹 서버 구조 고정된 스레드 모델  – 1 thread per connection – 굵고 짧은 연결에 적합 ...기존 WebApp – 길고 가는 연결에는 부적합 ...Comet 유연한 스레드 모델이 필요  17
    18. 기존의 웹 서버 구조: 흐름도 18
    19. 기존의 웹 서버 구조: Pseudo Code HTTP 요청이 들어오면: 연결이 끊길 때까지: 이벤트가 들어올 때까지: 30초 대기 또는 연결 유지 메시지 전송 이벤트가 들어오면: 비즈니스 로직 수행 수행 결과 메시지 전송 19
    20. 새 웹 서버 구조 Event-driven architecture  – 이벤트 대기 로직이 I/O 스레드에 존재 • 이벤트 대기의 Cross-cutting concern化 – 이벤트 발생시에만 B/L 스레드 활성화 • 훨씬 적은 스레드로 동일한 처리 능력 활발한 오픈 소스 활동  – MINA + AsyncWeb – ······ 20
    21. 새 웹 서버 구조: 흐름도 21
    22. 새 웹 서버 구조: Pseudo Code 이벤트가 들어오면: 비즈니스 로직 수행 수행 결과 메시지 전송 이벤트가 30초 동안 없으면: 연결 유지 메시지 전송 22
    23. 새 웹 서버 구조 새로 만드는데 굳이 1 thread/connection?  다양한 스레드 모델 지원  – CPU job 위주의 low latency 로직 – 일반적인 DB 로직 – CPU와 DB 로직이 혼합된 경우 • SEDA (Staged Event Driven Architecture) 23
    24. 새 웹 서버 구조: 스레드 모델 Interceptor Chain  – Event Source와 Business Logic 사이에 위치 – Servlet Filter와 유사 (Chain of Responsibility) 스레드 풀을 Interceptor로 구현  24
    25. 새 웹 서버 구조: 스레드 모델 25
    26. 목차: 현실적 문제 RIA의 재등장  RIA 통신 기술  새로운 웹 서버 구조  현실적 문제  – 현실은? – 어떻게? 결론  26
    27. 그러나 현실은? 기존 코드의 마이그레이션  개발자 교육  구현 비용  27
    28. 그렇다면 어떻게? Servlet API Bridge 제공  기존 프레임워크 그대로  MINA + AsyncWeb  28
    29. 목차: 결론 RIA의 재등장  RIA 통신 기술  새로운 웹 서버 구조  현실적 문제  결론  29
    30. 결론 웹 경험을 극대화하는 기술이 존재  기존 웹 서버로는 수용이 불가능  Event-driven 모델로의 이행이 필요  이행 과정의 문제는 충분히 해결 가능  30
    31. Q&A 감사합니다. 07년 2월 15일 웹플랫폼개발팀 이희승
    SlideShare Zeitgeist 2009

    + trustinleetrustinlee Nominate

    custom

    419 views, 0 favs, 0 embeds more stats

    'Web Server Architecture for Maximizing User Experi more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 419
      • 419 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 5
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories