함수 또는 서비스의 호출 방식
특정 서비스를 호출하면 처리가 완료될 때까지 기다렸다가 결과를 받는 방식
쉬운 디버깅, 직관적인 흐름 추적 가능
서비스를 호출하여 즉시 응답을 받고, 다른 작업을 하다가 처리가 완료되었는지 확인하여 결과를 받는 방식
컴퓨팅 자원의 효율적 활용 가능
Future 패턴, Observer 패턴, Callback, Reactor 패턴 등
Nettry는 Reactor 패턴 사용
연결, 데이터 입출력 과정에서 블로킹 발생
다중 클라이언트 처리를 위해서는 각 연결마다 스레드를 하나씩 만들어줘야함
병목이 발생함
OOM 발생 가능
빈번한 컨텍스트 스위칭으로 인한 자원 낭비
하나의 스레드로 여러 클라이언트 대응 가능
주로 GUI 기반 프로그램에 많이 사용
추상화 수준
이벤트를 나누는 단위
저수준으로 추상화할수록 더 많은 이벤트가 발생하여 성능 이슈
고수준으로 추상화할수록 세부적인 제어 불가능
ex) mouse click vs mouse key down, mouse key up
네트워크 이벤트의 주체는 소켓
데이터를 소켓에 전달하기 위해 데이터 핸들러 이용
로직 분리, 코드 재사용성 증가, 에러 처리 부담 완화
Last updated 7 years ago