Spring WebFlux
[Spring WebFlux] Blocking vs Non-Blocking & Sync vs Async
Blocking- 작업을 하다가 다른 주체로 작업이 넘어갈 경우 그 작업이 끝나고 나서야 자신의 작업을 이어하는 것- A가 B를 호출하면 제어권이 B로 넘어감 Non-Blocking- 다른 주체의 작업과는 상관없이 자신의 일을 하는 것- A가 B를 호출해도 제어권은 자신이 가지고 있다. -> 제어의 관점 (제어권) Sync- 두 개 이상의 주체가 서로 동시에 수행하거나, 동시에 끝나거나, 끝나는 동시에 시작할 때를 의미- A가 B를 호출한 뒤, B의 리턴을 계속 확인한다. Async- 두 주체가 서로의 시작, 종료와는 관계 없이 별도의 수행 시작/ 종료시간을 가지고 있을 때를 의미- A가 B를 호출할 때 콜백 함수를 함께 전달해서, B의 작업이 완료되면 콜백 함수를 실행함으로써 A는 B를 신경쓰지 않음 ..
2025. 2. 15. 10:44