I am using Async HTTP transport (https://cxf.apache.org/docs/asynchronous-client-http-transport.html) in my client that is using JAXRSClientFactoryBean for proxy creation. I am observing two strange things:
- when invoking the same URI in the loop there is always leased one connection from the pool and the processing time is fine,
- when invoking two different REST methods that are available on the same server (e.g. https://server.com/test1 and https://server.com/test2 the AsyncHttpConduit is reseting sslState and this leads to connection close and creation of new one. The processing time is much higher as we need to process SSL handshake every time.
SSL state inside AsyncHTTPConduit should be reset only when host or port of the url was changed. The path of the URI could be changed and request should be reusingexisting SSL persistent connection.