kill -9 pid 를 사용할 경우 프로세스가 강제종료 됩니다.
현재 어떤 작업을 진행중이라면 문제가 될 수 있습니다.
가급적이면 kill -15 옵션을 사용하는 것을 권장합니다.
만약 스프링 어플리케이션이라면
application.properties에 server.shutdown=graceful 옵션을 적용하면 안전하게 종료됩니다.
(스프링부트 2.3.0 버전부터 가능한것으로 확인 됐습니다.)
자바 프로세스의 경우
Runtime.getRuntime().addShutdownHook(new Thread() {
@Override
public void run() {
}
});
위 함수를 통해서 안전하게 프로세스를 종료시킬 수 있습니다.