WebFlux 적용하기 (1) Java I/O 와 NIO(New I/O, Non-Blocking I/O)
2023. 2. 14. 19:10
Spring Boot/WebFlux
내 프로젝트를 WebFlux 로 Async-Non Blocking 하게 만들어보자! WebFlux 는 Reactive Programming 을 지원하는 프레임워크로, 디폴트로 Netty 라는 NIO 클라이언트 서버 프레임워크를 사용합니다. Webflux 적용하기 첫 번째 포스팅으로 Java I/O 와 NIO 를 알아보도록 하겠습니다. 느린 Java 의 I/O 자바에 New I/O 가 추가 된 이유는 무엇일까요? 그 이유는 기존 I/O 의 속도가 느리기 때문입니다. Java 의 I/O 가 어떤 이유로 느린지, 그리고 NIO 는 어떤 점을 개선했는지 알아봅시다. Java I/O 의 동작 원리(파일 읽기) 프로세스는 커널에 read() 시스템 콜을 통해 버퍼를 채우도록 요청합니다. read() 가 호출되면 커..