undertow를 spring boot에서 쓰려면 다음과 같이 사용할 수 있다.
1. maven (pom.xml)
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-undertow</artifactId>
</dependency>
2. gradle (
dependencies {
compile("org.springframework.boot:spring-boot-starter-web") {
exclude group: "org.springframework.boot", module: "spring-boot-starter-tomcat"
}
compile ("org.springframework.boot:spring-boot-starter-undertow") {
exclude group: "io.undertow", module: "undertow-websockets-jsr"
} .. }
spring boot에서 undertow를 실행하면 tomcat에 비해 1/2정도로 빨리 실행된다. 그 이유는 undertow는 netty 기반이다. 최신 undertow는 netty 4.1을 기반으로 하고 있다. JBOSS에서 밀고 있는 웹 프레임워크이다. 쓰기 편하게 잘 감싸놨다.
참조 : http://blog.arungupta.me/undertow-benchmarks-wildfly/
사실 undertow가 netty 를 기반으로 되어 있기 때문에 거의 성능이 비슷하다. 그동안 웹 컨테이너가 tomcat, jetty를 쓰고 있었는데, 상용 서비스로 undertow로 써봐도 안정적이고 괜찮은 것 같다.
* 참고
https://github.com/undertow-io/undertow
'general java' 카테고리의 다른 글
[jenkins] exit 값 활용하기 (0) | 2015.12.02 |
---|---|
[spring boot] spring boot 1.3이 출시되었다. (0) | 2015.11.26 |
Java8 - parallelStream() cpu 개수 (0) | 2015.10.13 |
[spring mongodb] mongodb 색인 추가/삭제 및 jpa로 새로운 색인 생성하기 (2차 색인) (0) | 2015.10.08 |
[spring boot] l7check 막코드 + nginx 설정 (0) | 2015.10.05 |