inflearn logo
็Ÿฅ่ญ˜ๅ…ฑๆœ‰
inflearn logo

20,000+ RPSไธฆๅˆ—ๅ‡ฆ็†ใฎใŸใ‚ใฎใƒใ‚คใƒใƒผ้ขๆŽฅๅฎ˜ใŒๆ•™ใˆใ‚‹Reactiveใƒ—ใƒญใ‚ฐใƒฉใƒŸใƒณใ‚ฐ

ใƒˆใƒฉใƒ•ใ‚ฃใƒƒใ‚ฏใŒๅข—ๅŠ ใ™ใ‚‹ใปใฉใƒฌใ‚นใƒใƒณใ‚นใŒ้…ใใชใ‚Šใ€ใ‚นใƒฌใƒƒใƒ‰ใƒ—ใƒผใƒซใŒๆ€ฅ้€Ÿใซๆžฏๆธ‡ใ—ใ€ๅค–้ƒจAPIๅ‘ผใณๅ‡บใ—ใŒๅข—ใˆใ‚‹ใปใฉใƒœใƒˆใƒซใƒใƒƒใ‚ฏใŒๆทฑๅˆปๅŒ–ใ™ใ‚‹็’ฐๅขƒใงใ€ๆ นๆœฌ็š„ใช่งฃๆฑบ็ญ–ใ‚’่ฆ‹ใคใ‘ใŸใ„้–‹็™บ่€…ใฎใŸใ‚ใฎ่ฌ›ๅบงใงใ™ใ€‚ๅ˜ใซใ‚ตใƒผใƒใƒผใ‚’ๆ‹กๅผตใ™ใ‚‹ๆ–นๅผใงใฏใชใใ€ๆง‹้€ ่‡ชไฝ“ใ‚’ๅค‰ใˆใ‚‹่ฆณ็‚นใ‹ใ‚‰ๅ•้กŒใ‚’่ฆ‹ใคใ‚็›ดใ™ๆ‰‹ๅŠฉใ‘ใ‚’ใ—ใพใ™ใ€‚ ใ“ใฎ่ฌ›ๅบงใ‚’้€šใ˜ใฆใ€ใพใšไผ็ตฑ็š„ใชSpring MVCใฎThread per Requestใƒขใƒ‡ใƒซใŒใฉใฎใ‚ˆใ†ใช้™็•Œใ‚’ๆŒใคใฎใ‹ใ‚’็†่งฃใ—ใพใ™ใ€‚ใชใœCPUใฏไฝ™ใฃใฆใ„ใ‚‹ใฎใซใ‚นใƒซใƒผใƒ—ใƒƒใƒˆใŒไธŠใŒใ‚‰ใชใ„ใฎใ‹ใ€ใƒ–ใƒญใƒƒใ‚ญใƒณใ‚ฐI/OใŒๅฎŸ้š›ใซใฉใฎใ‚ˆใ†ใชๆ–นๅผใงใ‚ทใ‚นใƒ†ใƒ ใƒชใ‚ฝใƒผใ‚นใ‚’ๅ ๆœ‰ใ™ใ‚‹ใฎใ‹ใ‚’ใ‚ณใƒผใƒ‰ใƒฌใƒ™ใƒซใง็ขบ่ชใ—ใพใ™ใ€‚ ๆฌกใซใ€Reactive Streamsใฎๆฆ‚ๅฟตใจๆจ™ๆบ–ใ‚นใƒšใƒƒใ‚ฏใ‚’ๅญฆใณใ€ReactorใฎMonoใจFluxใ‚’ๆดป็”จใ—ใฆใƒ‡ใƒผใ‚ฟใ‚นใƒˆใƒชใƒผใƒ ใ‚’ๆ‰ฑใ†ๆ–นๆณ•ใ‚’็ฟ’ๅพ—ใ—ใพใ™ใ€‚ๅ˜ใชใ‚‹ไฝฟใ„ๆ–นใงใฏใชใใ€ใƒ‡ใƒผใ‚ฟใฎๆตใ‚ŒใŒใฉใฎใ‚ˆใ†ใซๅง‹ใพใ‚Šใ€ใฉใฎใ‚ˆใ†ใซๆถˆ่ฒปใ•ใ‚Œใ€ใ‚นใƒซใƒผใƒ—ใƒƒใƒˆใฏใฉใฎใ‚ˆใ†ใซ่ชฟ็ฏ€ใ•ใ‚Œใ‚‹ใฎใ‹ใพใงใ€ๅฎŸ็ฟ’ใ‚’้€šใ˜ใฆไฝ“ๅพ—ใ—ใพใ™ใ€‚็‰นใซBack Pressureใ‚’ๆดป็”จใ—ใฆOOMใ‚„้Ž่ฒ ่ทใ‚’้˜ฒๆญขใ™ใ‚‹่จญ่จˆๆ–นๅผใ‚‚็›ดๆŽฅๅฎŸ่ฃ…ใ—ใฆใฟใพใ™ใ€‚ ใพใŸใ€Spring WebFluxใฎใ‚คใƒ™ใƒณใƒˆใƒซใƒผใƒ—ใƒ™ใƒผใ‚นใฎๅ‡ฆ็†ๆง‹้€ ใ‚’็†่งฃใ—ใ€Non-Blocking I/OใŒๅฎŸ้š›ใฎ่ฆๆฑ‚ๅ‡ฆ็†้Ž็จ‹ใงใฉใฎใ‚ˆใ†ใซๅ‹•ไฝœใ™ใ‚‹ใฎใ‹ๆฏ”่ผƒๅฎŸ็ฟ’ใ‚’่กŒใ„ใพใ™ใ€‚MVCใจWebFluxใ‚’ไธฆในใฆๆง‹้€ ็š„ใช้•ใ„ใ‚’็ขบ่ชใ—ใ€ใ„ใคReactiveใ‚’้ธๆŠžใ™ในใใ‹ใจใ„ใ†ๅˆคๆ–ญๅŸบๆบ–ใ‚‚ใ‚ใ‚ใ›ใฆๆ•ด็†ใ—ใพใ™ใ€‚ ๅ˜ใซใ€Œ้žๅŒๆœŸใ‚’ๅญฆใถใ€ใจใ„ใ†ใƒฌใƒ™ใƒซใงใฏ็ต‚ใ‚ใ‚Šใพใ›ใ‚“ใ€‚ๅฐ‘ใชใ„ใ‚นใƒฌใƒƒใƒ‰ใงใ‚ˆใ‚Šๅคšใใฎใƒชใ‚ฏใ‚จใ‚นใƒˆใ‚’ๅ‡ฆ็†ใ™ใ‚‹ๆ–นๆณ•ใ€ๅค–้ƒจAPIใธใฎไพๅญ˜ๅบฆใŒ้ซ˜ใ„็’ฐๅขƒใงๅฎ‰ๅฎšใ—ใŸๆตใ‚Œใ‚’็ถญๆŒใ™ใ‚‹ๆ–นๆณ•ใ€ใใ—ใฆ้ซ˜ไธฆ่กŒๆ€ง็’ฐๅขƒใงใ‚นใƒซใƒผใƒ—ใƒƒใƒˆใ‚’็ขบไฟใ™ใ‚‹่จญ่จˆใ‚ปใƒณใ‚นใ‚’ๅญฆใถใ“ใจใŒใงใใพใ™ใ€‚

้›ฃๆ˜“ๅบฆ ๅ…ฅ้–€

ๅ—่ฌ›ๆœŸ้–“ ็„กๅˆถ้™

Java
Java
Spring
Spring
Spring Boot
Spring Boot
Parallel Processing
Parallel Processing
webflux
webflux
Java
Java
Spring
Spring
Spring Boot
Spring Boot
Parallel Processing
Parallel Processing
webflux
webflux

ใŠ็Ÿฅใ‚‰ใ›

ๆ–ฐใ—ใ„ใŠ็Ÿฅใ‚‰ใ›ใŒใ‚ใ‚Šใพใ›ใ‚“ใ€‚

ๆœŸ้–“้™ๅฎšใ‚ปใƒผใƒซ

๏ฟฅ6,308

50%

๏ฟฅ12,616