마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

API CPU 1초만에 100% 찍는 오류

0 추천

## 현상

5, 10, 15 분 만에 계속 1초만에 CPU 가 100% 를 쳐버립니다.

톰캣이 죽지는 않고 RDS(DB) 쪽 도 정상입니다.

톰캣을 ./shutdown.sh 시켜도 우분투에서 쓰레드를 강제종료 시켜야 다시 ./startup.sh 을 시킬수 있고

곧 5, 10, 15분 안에 1초 만에 CPU 를 100% 쳐서 앱이 뻗어버립니다.

현재 API 서버로 사용중이며 앱 런칭 하자마자 이런 현상이 발생하고 있습니다.

 

## 개발 환경

플랫폼 : AWS

OS : ubuntu 14.04 LTS

CLass : i2.xlarge ( 4vCPUs, 30.5 Memory(GiB), 1 x 800 (SSD) )

JDK : java version - 1.8.0_111

WAS : tomcat 7.0.73

 

JAVA, Maven, RESTfull API 방식.

aurora DB ( db.r3.xlarge - 3 vCPU, 30.5 GiB Ram )

 

 

## 설정환경

$TOMCAT_HOME/conf/server.xml

<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" minSpareThreads="10"

maxThreads="500" acceptCount="100" maxConnection="90000" redirectPort="8443" />

 

$TOMCAT_HOME/bin/catalina.sh

JAVA_OPTS="-Djava.awt.headless=true -Dfile.encoding=UTF-8 -Xms1024m -Xmx1024m -XX:NewSize=512m -XX:MaxNewSize=512m -XX:PermSize=512m -XX:MaxPermSize=512m -XX:+DisableExplicitGC"

 

Haruu (150 포인트) 님이 2016년 12월 23일 질문

1개의 답변

+1 추천
CPU 100% 만들기 간단해요... while(true) 같은 무한 루프가 있는지 확인해보세요..   ..ㅎㅎ
익명사용자 님이 2016년 12월 23일 답변
...