springWebFlux

Spring WebFlux

์ฐธ์กฐ

Spring WebClient ์‰ฝ๊ฒŒ ์ดํ•ดํ•˜๊ธฐ Spring WebFlux๋Š” ์–ด๋–ป๊ฒŒ ์ ์€ ๋ฆฌ์†Œ์Šค๋กœ ๋งŽ์€ ํŠธ๋ž˜ํ”ฝ์„ ๊ฐ๋‹นํ• ๊นŒ? ๋™๊ธฐ์™€ ๋น„๋™๊ธฐ PM2๋ฅผ ํ™œ์šฉํ•œ Node.js ๋ฌด์ค‘๋‹จ ์„œ๋น„์Šคํ•˜๊ธฐ ์ฝ”ํ‹€๋ฆฐ(kotlin) + ์Šคํ”„๋ง๋ถ€ํŠธ(springboot) + ์›นํ”Œ๋Ÿญ์Šค(webflux) + ์ฝ”๋ฃจํ‹ด(coroutine) - ์›นํ”Œ๋Ÿญ์Šค์—์„œ ์ฝ”๋ฃจํ‹ด ์‚ฌ์šฉํ•ด๋ณด๊ธฐ

Spring WebFlux

Spring MVC๊ฐ€ ๋ฉ€ํ‹ฐ ์Šค๋ ˆ๋“œ + blocking + ๋™๊ธฐ ๋ฐฉ์‹์ด๋ผ๋ฉด, Spring WebFlux๋Š” 1์ฝ”์–ด๋‹น 1์Šค๋ ˆ๋“œ + non-blocking + ๋น„๋™๊ธฐ ๋ฐฉ์‹์ด๋‹ค. 1์ฝ”์–ด๋‹น 1์Šค๋ ˆ๋“œ + non-blocking + ๋น„๋™๊ธฐ ๋ฐฉ์‹์€ Node.js์—์„œ๋„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค. (์ฐธ๊ณ  : PM2๋ฅผ ํ™œ์šฉํ•œ Node.js ๋ฌด์ค‘๋‹จ ์„œ๋น„์Šคํ•˜๊ธฐ๋ฅผ ์ฝ์–ด๋ณด๋ฉด ์‹ฑ๊ธ€์Šค๋ ˆ๋“œ๋กœ ๋™์ž‘ํ•˜๋Š” nodejs์˜ ๋‹จ์ ์„ ์–ด๋–ป๊ฒŒ ๋ณด์™„ํ•˜๋Š”์ง€ ์‚ดํŽด๋ณผ ์ˆ˜ ์žˆ๋‹ค.)

Spring WebFlux๋Š” ์ด๋ฒคํŠธ ๋“œ๋ผ์ด๋ธ ๊ตฌ์กฐ๋กœ Event Loop๋ฅผ ํ†ตํ•ด์„œ ์ž‘์—…์ด ์ฒ˜๋ฆฌ๋œ๋‹ค. Event Loop์ด ์ž…๋ ฅ์„ ์œ„ํ•ด ๋ฃจํ”„๋กค ๋Œ๊ณ  ์žˆ๊ณ , ์ด๋ฒคํŠธ ๋ฐœ์ƒ ์‹œ ๋น„๋™๊ธฐ์ ์œผ๋กœ ๋กœ์ง์„ ์ฒ˜๋ฆฌํ•œ๋‹ค.

event-loop

Last updated