Greetings, We have found a need to stop and start Tomcat once in a while to allow Tomcat to connect via HTTPS with some other servers. We think the restart may be synchronizing the time Tomcat uses with the server OS system time, and we are looking for ways to prevent having to stop/start Tomcat.
Details: Our instance of Tomcat 6.0.36 runs on HP-UX B11.31 ia64 with JVM Version 1.7.0.08. It hosts a custom servlet which, when invoked, connects with a remote server via HTTPS to retrieve some data. However, after about a month the timestamp Tomcat sends in the SSL handshake appears to drift enough for the remote server's time to start rejecting requests because the timestamp is too far off (according to our partner's remote application logs). We have confirmed that our server clock is set correctly and synced with NTP, and matches the system clock on the remote server, which also uses NTP. So one thing we thought might be happening is that Tomcat (or the Java that Tomcat runs on) may be keeping an internal clock, perhaps using a separate thread as a way to speed up the retrieval of time so that it does not have to go to the OS system clock every time it needs the current time. And maybe this internal clock is not synced with the server time until Tomcat (or the JVM) is restarted. If this is the case, would anyone have an idea of how to force Tomcat (or Java) to use the server's system clock every time instead of using its own internal clock? We do not care about the performance hit on this because this is a low-volume application. Or, if we are misunderstanding Tomcat and it actually uses the system clock every time it needs to get the current time, is there something else we should be looking at? We have researched on the web, checked the Apache mail archives, read the Tomcat configuration guide, looked up the Java system options, but have not studied the Tomcat source code yet. We did find that there is a Java Wrapper product out there by Tanuki Software that provides an option to use system time or a background thread, which is what caused us to wonder if Tomcat might be doing something similar. For more information on what the Tanuki wrapper does, here is an excerpt we found on their website http://wrapper.tanukisoftware.com/doc/english/prop-use-system-time.html: "As of Wrapper version 3.1.0, a new timer mechanism was added to the Wrapper. This new timer was made the default in Wrapper version 3.2.0. Rather than keeping time by querying the system clock, the Wrapper creates a background thread which enters a light weight loop and increments an internal "tick" counter. Internally all timekeeping has been modified to be based on these "ticks". (If the system time is being used, then the tick count at any particular moment is calculated from the system time rather than from the counter.) " Thanks in advance for any ideas that are shared. Richard --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org