JVM/Spring

[Toby Spring Reactive Programming] 비동기 RestTemplate과 비동기 MVC/Serlvet (5)

Hyo Kim 2023. 10. 21. 14:08
728x90
반응형

서론

https://www.youtube.com/watch?v=ExUfZkh7Puk

토비님의 유튜브 강의 내용을 정리한 글 입니다.


본론

@RestController
public static class MyController {
    AsyncRestTemplate rt = new AsyncRestTemplate();
    
    @GetMapping("/rest")
    public String rest(int idx) {
        return rt.getForEntity("http://localhost:8081/service?req={req}", String.class, "hello" + idx);
    }
}

AsyncRestTemplate을 사용하면, 톰캣 스레드 1개로 처리가 가능하다.

하지만, 백그라운드 스레드가 생성되어 처리하기 때문에 성능상 좋지 못해

Spring 5에서는 Deprecated됐고, Spring 6에서는 아예 없어진 걸로 보인다.

 

Netty 라이브러리로 클라이언트를 바꿔서 처리하면, 스레드를 만들지 않고도 처리했지만

현재 기준으로 없어진 메소드이기 때문에 더 알아보진 않았다.

 

728x90
반응형