devwithpug / devwithpug.github.io

https://devwithpug.github.io
MIT License
1 stars 1 forks source link

project/randhand-4-jvm-warmup-on-spring-cloud-msa/ #5

Open utterances-bot opened 2 years ago

utterances-bot commented 2 years ago

JVM Warm Up으로 스프링 클라우드의 첫 번째 요청 딜레이 없애기 공부하며 끄적이는 장소 🐶

👋랜손챗 프로젝트 깃허브 바로가기

https://devwithpug.github.io/project/randhand-4-jvm-warmup-on-spring-cloud-msa/

urstoryp commented 2 years ago

성능테스트를 하게 되면 위와 같은 방법만 사용해서는서버가 열리자마자 동시에 여러명이 요청 왔을 때 초기 결과가 느리게 나올 것입니다. tomcat의 threads에 대한 설정 때문인데요.

server.tomcat.threads.max는 기본값이 200인데요. server.tomcat.threads.min-spare의 값은 10입니다. 이 min-spare도 max와 같게 설정하면 그럴땐 효과적일 수 있습니다.

devwithpug commented 2 years ago

@urstoryp 저는 스프링 내부에 대해서만 고민을 했었는데, 동시에 폭주하는 트래픽을 위해선 톰캣에서도 적당한 최소 스레드를 미리 지정할 필요가 있겠네요!

좋은 의견 주셔서 감사합니다 😊

urstory commented 2 years ago

Spring Boot Tomcat의 max threads, min-spare, Hikari CP의 maximumPoolSize, MySQL의 max_connections 와 각각의 connection TimeOut.

그리고 서버의 수. 쿼리 수행속도. api로직의 수행시간에 따라 다른 결과가 나오겠네요. :-)