* ManagedSelector dump improvements from #1970
ManagedSelector dump improvements from #1970:
+ DumpKeys is now prepended to actions list so it is less likely to be delayed by a stuck/busy selector
+ Timestamps are included for actions and keys which may be separated by time
+ Race removed race for updating dumpKey list while it is being added to.
Signed-off-by: Greg Wilkins <gregw@webtide.com>
* moved utility timestamp format method to Log
Signed-off-by: Greg Wilkins <gregw@webtide.com>
* updates after review
Signed-off-by: Greg Wilkins <gregw@webtide.com>
* changes after review
Signed-off-by: Greg Wilkins <gregw@webtide.com>
* Issue #1970 - ManagedSelector dump improvements.
Code cleanups.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
* Revert "Issue #1970 - ManagedSelector dump improvements."
This reverts commit 4febaf10dc.
* Fixed imports and other review feedback
Signed-off-by: Greg Wilkins <gregw@webtide.com>
* Code cleanups.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
* Improved test case handler.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
* Improved exception message.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
* Issue #1973 - Implement minimum response data rate.
Implemented response content data rate control in HttpOutput.
Introduced a WriteFlusher.Listener interface that produces events
for every flush(). These events are forwarded to the Connection
and from there to the HttpOutput so that the data rate control can
be enforced.
Both HTTP/1.1 and HTTP/2 are implemented.
Data rate control for HTTP/1.1 is approximate because it will count
also headers bytes and the chunk bytes, while for HTTP/2 is precise.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
* Issue #1973 - Implement minimum response data rate.
Addressed review comments.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
Signed-off-by: olivier lamy <olamy@webtide.com>
use a randomized map name to store sessions in order to avoid conflicts
Signed-off-by: olivier lamy <olamy@webtide.com>
reduce hazelcast logging noise
Signed-off-by: olivier lamy <olamy@webtide.com>
clarify onlyClient mode
Signed-off-by: olivier lamy <olamy@webtide.com>
Introduced ContentProvider.isReproducible() to detect whether the
request content can be provided more than once, and modified
ContentProvider implementation accordingly.
Modified AuthenticationProtocolHandler to not send an authenticated
request if the content is not reproducible.
Modified AuthenticationProtocolHandler to tolerate request failures.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
Implemented as integer guard + timestamp.
The timestamp is not enough to guard against long times spent sending
(and/or in application callbacks during sends).
Added missing @ManagedObject annotation to AbstractConnectorHttpClientTransport.
Also exported to JMX the "multiplexed" attribute for the FCGI transport
and the "useALPN" attribute for the HTTP/2 transport.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
Added HttpClientMBean, and overridden getObjectContextBasis() so that
the HttpClient name is inherited by children components such as the
HttpClientTransport, the ThreadPool, etc.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
Issue #2010 Support FIPs Key Managers, by only wrapping the default Key Manager if we have wildcard CN's or more than 1 non wild CN. FIPs users will need to install a
keystore than has no multiple certificates than can only be resolved by SNI. They will also need to have no certificate aliases.
Signed-off-by: Greg Wilkins <gregw@webtide.com>
Updated the class with better formatting, added javadocs, updated old
javadocs, removed warnings, etc.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
Now waking up the flusher via iterate() after a reset has been received.
This ensures that frames that may have stalled are removed from the
flusher queue.
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>