# tmshutdown 

 

tmshutdown 커맨드와 주로 사용하는 옵션으로는

 

-cy 지만  (client들이 연결되어있어도 프로세스를 shutdown 하겠다 라는 옵션)

 

-w 옵션을 주어서 shutdown을  delay 시킬 수 있다.

 

 

 

 


# tmshutdown 예시 

 

 

* 예를 들어 >

 

> tmshutdown -w 2 -s simpserv 

 

server를 2초의 시간으로 딜레이를 주어 shutdown 시키겠다는 커맨드다.

 

-w 옵션은

1. SIGTERM 으로 죽이고, 그래도 내려가지 않는 경우에 

2. SIGKILL 로 죽인다.

 


 

# tmshutdown SIGKILL SIGTERM ? 

 

 

 

> tmshutdown -k TERM 으로

 

 tmshutdown을 하면 SIGTERM 함수를 보내어 tpsvrdone()을 수행하면서 process들이 종료가 되는데 SIGTERM 은 Application Server Process의 Hang 현상을 remove하기 위해 생겨진 함수이기 때문에

System Server Process들은 shutdown 되는 대상에서 제외가 된다.

*System Server Process :  DBBL, BBL, GWTDOMAIN, WSL 

 

 

> tmshutdown -k KILL 커맨드는 

 

엔진 내부적으로 SIGKILL 함수를 보내 Application Server Process에게 전달되어 tpsvrdone() 에 의해 종료된다.

(이때 WSH는 tuxedo 엔진 입장에서는 일종의 client이기 때문에 SIGKILL 시그널을 직접 받지 못하기 때문에 종료되지 않는다. 즉, 정상적인 종료인 경우에 WSL의 tpsvrdone 함수에서 WSH를 정리하는 단계가 있으나, 현재 SIGKILL시그널을 받아 갑자기 종료가 되므로 tpsvrdone 함수를 만나지 못하게 되어 WSH를 정리하지 못하고 종료되어 WSH 프로세스가 남는 것이다.)

 

 

 

 

 

 

 

 

 

 

+ Recent posts