F
Florian Weimer
I'm looking for a very lightweight library which permits replacing the
code in a network server without closing the server socket.
Basically, I expect it to monitor a JAR file on disk and switch to the
new version once it changes.
The actual server code does not keep any non-reconstructible state,
and existing connection can keep using the old code, so the problem is
quite simple. An application would also do it (except that those tend
not to be lightweight), but the protocol is not HTTP, it's a customer
protocol which runs over TLS. Currently, I use an SSLServerSocket
with custom trust managers, which will lead to class loader issues
because the container/application server will keep a reference to the
trust manager past the intended life-time of the code, but I could
switch to a plain ServerSocket and add the TLS to it using SSLEngine.
Any suggestions?
code in a network server without closing the server socket.
Basically, I expect it to monitor a JAR file on disk and switch to the
new version once it changes.
The actual server code does not keep any non-reconstructible state,
and existing connection can keep using the old code, so the problem is
quite simple. An application would also do it (except that those tend
not to be lightweight), but the protocol is not HTTP, it's a customer
protocol which runs over TLS. Currently, I use an SSLServerSocket
with custom trust managers, which will lead to class loader issues
because the container/application server will keep a reference to the
trust manager past the intended life-time of the code, but I could
switch to a plain ServerSocket and add the TLS to it using SSLEngine.
Any suggestions?