๐ 1. Unable to load io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider ์ค๋ฅ
> ์ฐธ๊ณ ๊ธ
ํ๋ก์ ํธ๋ฅผ ์คํํ์ ๋ค์๊ณผ ๊ฐ์ ์๋ฌ๊ฐ ๋์์ต๋๋ค.
2023-03-09 22:32:39.440 ERROR 9769 --- [ main] i.n.r.d.DnsServerAddressStreamProviders : Unable to load io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider, fallback to system defaults. This may result in incorrect DNS resolutions on MacOS.
์ด๋ฌํ ์๋ฌ๋ Mac M1์์ ๋ฐ์ํ๋ ์๋ฌ๋ผ๊ณ ํ๋ฉฐ, osx-aarch_64๋ผ๋ ํน์ dependency๋ฅผ ๋ฐ์์ผ ํด๊ฒฐ๋๋ ๊ฒ์ด๋ผ๊ณ ํฉ๋๋ค.
spring-boot-starter-webflux > spring-boot-starter-reactor-netty > reactor-netty-http > reactor-netty-core > netty-resolver-dns-native-macos์ dependency ๊ด๊ณ๋ฅผ ๊ฐ์ง๋๋ค.
implementation 'io.netty:netty-resolver-dns-native-macos:4.1.68.Final:osx-aarch_64'
๋ง๋ ๋ฒ์ ์ผ๋ก implementation์ ๊ฑฐ์น๋ฉด, ์ ์์ ์ผ๋ก ์๋ํ๋ ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค.
2023-03-09 22:35:17.961 INFO 9784 --- [ main] c.e.g.GtServerSideApplication : Started GtServerSideApplication in 1.682 seconds (JVM running for 2.269)
๐ 2. WebFlux๋ฅผ ์ ์ฉํ๋๋ฐ, Netty๊ฐ ์๋ Tomcat์ด ์ ์ฉ๋๋ ๊ฒฝ์ฐ
ํ๋ก์ ํธ๋ฅผ ์ฒ์ ์ค์ ํ ๋, spring-boot-starter-web์ ์ค์ ํ์๋ค๊ฐ, ๋์ค์ WebFlux๋ฅผ ์ฌ์ฉํด๋ณด๊ธฐ ์ํด ํด๋น dependency๋ฅผ ์ญ์ ํ๊ณ spring-boot-starter-webflux๋ฅผ ์ ์ฉํ์ต๋๋ค.
๊ทธ๋ฌ์, ์ ์์ ์ผ๋ก ์คํ์ ๋๋ Netty๊ฐ ์๋ Tomcat์ผ๋ก 8080ํฌํธ๊ฐ ์ด๋ฆฐ ๊ฒ์ ํ์ธํ ์ ์์์ต๋๋ค.
์ด๋ฌํ ๋ฌธ์ ์ ๋ํ ํด๊ฒฐ์ฑ ์ Spring ๊ณต์ ๋ ํผ๋ฐ์ค์์ ๋ฐ๊ฒฌํ ์ ์์์ต๋๋ค.
dependencies{
... ์๋ต
modules {
module("org.springframework.boot:spring-boot-starter-tomcat") {
replacedBy("org.springframework.boot:spring-boot-starter-reactor-netty", "Use netty instead of tomcat")
}
}
... ์๋ต
}
์์ ๊ฐ์ด build.gradle์ dependencies ๋ด๋ถ์ ํด๋น ์ฝ๋๋ฅผ ๋ฃ์ผ๋ฉด, WAS๊ฐ ํฐ์บฃ์์ Netty๋ก ๋ณ๊ฒฝ๋๊ฒ ๋ฉ๋๋ค.
์ ์์ ์ผ๋ก 8080 ํฌํธ๋ก ๋คํฐ๊ฐ ์คํ๋ ๊ฒ์ ํ์ธํ ์ ์์์ต๋๋ค.