I have 2 Spring boot projects running on same tomcat:
- REST-API
- Background Service (BS)
Purpose
- REST-API : UI application uses this to get things done.
- BS : Based on UI activity this service gets executed and gets things done on Real-time .
Details
BS is written as while(1)
considering the purpose of the same.
Tomcat Error
1st Attempt:
Using CATALINA_PID: /home/user/bin/pid/tomcat_pid
Tomcat did not stop in time.
PID file was not removed.
To aid diagnostics a thread dump has been written to standard out
2nd Attempt:
java.net.ConnectException: Connection refused (Connection refused) at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) at java.net.Socket.connect(Socket.java:589) at java.net.Socket.connect(Socket.java:538) at java.net.Socket.<init>(Socket.java:434) at java.net.Socket.<init>(Socket.java:211) at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:492) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:406) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:495) The stop command failed. Attempting to signal the process to stop through OS signal. Tomcat stopped.
Problems:
1. When I restart tomcat, BS project will only be running and REST-API does not get started (I guess this happens because of while(1)
it starts executing and not giving chance to start REST-API project )
2. While stopping tomcat it does not get stopped in a single attempt, when we try to stop one more time then it gets stopped.