Author: markt Date: Fri Feb 1 10:28:01 2019 New Revision: 1852698 URL: http://svn.apache.org/viewvc?rev=1852698&view=rev Log: Add stream timeouts
Modified: tomcat/trunk/java/org/apache/coyote/http2/Http2Protocol.java Modified: tomcat/trunk/java/org/apache/coyote/http2/Http2Protocol.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http2/Http2Protocol.java?rev=1852698&r1=1852697&r2=1852698&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http2/Http2Protocol.java (original) +++ tomcat/trunk/java/org/apache/coyote/http2/Http2Protocol.java Fri Feb 1 10:28:01 2019 @@ -42,8 +42,10 @@ import org.apache.tomcat.util.net.Socket public class Http2Protocol implements UpgradeProtocol { static final long DEFAULT_READ_TIMEOUT = 10000; - static final long DEFAULT_KEEP_ALIVE_TIMEOUT = -1; static final long DEFAULT_WRITE_TIMEOUT = 10000; + static final long DEFAULT_KEEP_ALIVE_TIMEOUT = -1; + static final long DEFAULT_STREAM_READ_TIMEOUT = 20000; + static final long DEFAULT_STREAM_WRITE_TIMEOUT = 20000; // The HTTP/2 specification recommends a minimum default of 100 static final long DEFAULT_MAX_CONCURRENT_STREAMS = 200; // Maximum amount of streams which can be concurrently executed over @@ -57,9 +59,14 @@ public class Http2Protocol implements Up private static final byte[] ALPN_IDENTIFIER = ALPN_NAME.getBytes(StandardCharsets.UTF_8); // All timeouts in milliseconds + // These are the socket level timeouts private long readTimeout = DEFAULT_READ_TIMEOUT; - private long keepAliveTimeout = DEFAULT_KEEP_ALIVE_TIMEOUT; private long writeTimeout = DEFAULT_WRITE_TIMEOUT; + private long keepAliveTimeout = DEFAULT_KEEP_ALIVE_TIMEOUT; + // These are the stream level timeouts + private long streamReadTimeout = DEFAULT_STREAM_READ_TIMEOUT; + private long streamWriteTimeout = DEFAULT_STREAM_WRITE_TIMEOUT; + private long maxConcurrentStreams = DEFAULT_MAX_CONCURRENT_STREAMS; private int maxConcurrentStreamExecution = DEFAULT_MAX_CONCURRENT_STREAM_EXECUTION; // If a lower initial value is required, set it here but DO NOT change the @@ -145,6 +152,16 @@ public class Http2Protocol implements Up } + public long getWriteTimeout() { + return writeTimeout; + } + + + public void setWriteTimeout(long writeTimeout) { + this.writeTimeout = writeTimeout; + } + + public long getKeepAliveTimeout() { return keepAliveTimeout; } @@ -155,13 +172,23 @@ public class Http2Protocol implements Up } - public long getWriteTimeout() { - return writeTimeout; + public long getStreamReadTimeout() { + return streamReadTimeout; } - public void setWriteTimeout(long writeTimeout) { - this.writeTimeout = writeTimeout; + public void setStreamReadTimeout(long streamReadTimeout) { + this.streamReadTimeout = streamReadTimeout; + } + + + public long getStreamWriteTimeout() { + return streamWriteTimeout; + } + + + public void setStreamWriteTimeout(long streamWriteTimeout) { + this.streamWriteTimeout = streamWriteTimeout; } --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org