Proactor

2,371 views

Published on

0 Comments
6 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,371
On SlideShare
0
From Embeds
0
Number of Embeds
78
Actions
Shares
0
Downloads
36
Comments
0
Likes
6
Embeds 0
No embeds

No notes for slide

Proactor

  1. 1. ProActor charsyam@naver.com
  2. 2. EventHandler
  3. 3. I/O HANDLERPOLYMORPHISM
  4. 4. I/O HANDLER Event HandlerHTTP
  5. 5. I/O HANDLER Event HandlerHTTP SMTP
  6. 6. I/O HANDLER Event HandlerHTTP SMTP Custom LOG
  7. 7. WrongFirst SeenReactor And Proactor
  8. 8. ONE ProtocolVariable EVENTS
  9. 9. 요렇게 I/O HANDLER생각합니다. Event HandlerLOGIN CHAT ATTACK TRADE
  10. 10. I/O HANDLER Event HandlerGAME OTHER OTHER OTHERLOGIN CHAT ATTACK TRADE
  11. 11. I/O HANDLER Event Handler PROTOCOL PARSING LAYERGAME OTHER OTHER OTHERLOGIN CHAT ATTACK TRADE
  12. 12. ReactiveProactive
  13. 13. Reactive어떤 이벤트에 반응하는
  14. 14. Proactive상황에 앞서서 주도하는
  15. 15. Reactor Model
  16. 16. Single Thread No Sync Mechanism Event Execute Handler 일반적인 Reactor 의 장점을 Event 가져갂다.Reactor Handler Event 특정 Event Handler 가 작 Handler 업이 오래걸리면 다른 Handler 에 영향을 준다.
  17. 17. Single Thread Demultiplexer Multi-Thread Dispatcher Multi-Thread Reactor Producer-Consumer Event Half-Sync, Half-Async Leader-FollowerPush Handler Active Object Event Queue Handler POP Event 동기화 필요 Handler Deadlock 조심
  18. 18. Single Thread 동기화가 필요 없다. Event Handler 일반적인 Reactor 의 장점을 가져갂다. EventReactor Handler Event Handler 특정 Event Handler 가 작업이 오래걸 리면 다른 Handler 에 영향을 준다.
  19. 19. Proactor
  20. 20. Requirement 데이터가 미리 요청! 블록 되면 안됨 없으면? Active 뉘신지? 완료 통보! Object 필요 관련Future/ACT 미리 요청! 작업 처리
  21. 21. Requirement 데이터가 미리 요청! 블록 되면 안됨 없으면? Active 뉘신지? 완료 통보! Object 필요 관련Future/ACT 미리 요청! 작업 처리
  22. 22. Requirement 데이터가 미리 요청! 블록 되면 안됨 없으면? Active 뉘신지? 완료 통보! Object 필요 관련Future/ACT 미리 요청! 작업 처리
  23. 23. Requirement 데이터가 미리 요청! 블록 되면 안됨 없으면? Active 뉘신지? 완료 통보! Object 필요 관련Future/ACT 미리 요청! 작업 처리
  24. 24. Requirement 데이터가 미리 요청! 블록 되면 안됨 없으면? Active 뉘신지? 완료 통보! Object 필요 관련Future/ACT 미리 요청! 작업 처리
  25. 25. Requirement 데이터가 미리 요청! 블록 되면 안됨 없으면? Active 뉘신지? 완료 통보! Object 필요 관련Future/ACT 미리 요청! 작업 처리
  26. 26. Requirement 데이터가 미리 요청! 블록 되면 안됨 없으면? Active 뉘신지? 완료 통보! Object 필요 관련Future/ACT 미리 요청! 작업 처리
  27. 27. Requirement 데이터가 미리 요청! 블록 되면 안됨 없으면? Active 뉘신지? 완료 통보! Object 필요 관련Future/ACT 미리 요청! 작업 처리
  28. 28. Requirement 데이터가 미리 요청! 블록 되면 안됨 없으면? Active 뉘신지? 완료 통보! Object 필요 관련Future/ACT 미리 요청! 작업 처리
  29. 29. 선수 과목Future/ACTActive Object
  30. 30. Future/ACT
  31. 31. 푸드코트에서 미리 선결재 하고 햄버거 나오기 전에 영수증 받아두는 것 누구의 주문인지 알 수가 있습니다.
  32. 32. ActiveObject
  33. 33. 능동적인Object?
  34. 34. 독립적인 실행 Thread Process
  35. 35. 다시Proactor
  36. 36. ACE: Proactor Boost::ASIO
  37. 37. ProactorBenefit
  38. 38. Proactor BenefitReduce Memory CopyProper Thread Control
  39. 39. Reactor/Proactor구분 말고 아키텍처를 잘 만들자!
  40. 40. THANK YOU!

×