Sometimes on a busy system I have seen that "catalina.sh stop" does take a long time to shutdown tomcat. We are running another "monitoring service" on the system that monitors tomcat and few other system services. After issuing "catalina.sh" and waiting for some time (up to 25 seconds) it loses patience and gives a SIGTERM to tomcat process. SIGTERM seems to bring tomcat down much faster.
What is the downside of using SIGTERM, if any? It does seem to bring tomcat down in an orderly manner and much faster than "catalina.sh stop".