Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions cloudhub-2/modules/ROOT/pages/ch2-limits.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,11 @@ HTTP header length (`maxHeaderLength`):: 32K
Maximum HTTP request size:: 1 GB

Maximum HTTP request timeout:: 300 seconds
+
This is the read-request timeout, which is the maximum time the ingress controller waits to receive the complete request from the client. This timeout is hardcoded and applies to both shared and private spaces.
+
[NOTE]
In private spaces, you can configure the read-response timeout (the time CloudHub 2.0 waits for a response from your Mule application) up to 3600 seconds. For more information, see xref:ps-config-advanced.adoc#configure-http-requests-and-read-response-timeout[Configure HTTP Requests and Read-Response Timeout].

Maximum ingress URI size:: 4 KB

Expand Down
33 changes: 29 additions & 4 deletions cloudhub-2/modules/ROOT/pages/ps-config-advanced.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,14 @@ Use options on the *Advanced* tab to:
* Configure how the ingress load balancer handles HTTP requests.
* Specify the read-response timeout.
+
This value is the amount of time CloudHub 2.0 waits for a response from the Mule application.
// If no data is sent or received in the specified time, CloudHub 2.0 closes the client and private space connections.
If no data is sent or received in the specified time, CloudHub 2.0 drops the request with a 504 error.
This value is the amount of time the CloudHub 2.0 ingress controller waits to receive a response from your Mule application after forwarding the request. If your application takes longer than the configured time to process the request and start sending the response, CloudHub 2.0 drops the connection with a 504 error.
+
[IMPORTANT]
====
This timeout setting is separate from the read-request timeout, which controls how long the CloudHub 2.0 ingress controller waits to receive the full request from the client. The read-request timeout is hardcoded to 300 seconds, and you can't configure it. If your client takes longer than 300 seconds to send the complete request (for example, when uploading large files), CloudHub 2.0 drops the connection even if you have configured a longer read-response timeout.

For data transfers that exceed 300 seconds, consider breaking the request into smaller chunks or implementing asynchronous processing patterns.
====
* Configure ingress load balancer logs levels and download logs.
* Configure Amazon Web Services (AWS) service roles.

Expand Down Expand Up @@ -39,13 +44,33 @@ Silently drops HTTP requests.
--
. Specify the read response timeout value.
+
The default timeout is 300 seconds.
The default read-response timeout is 300 seconds. You can configure this value up to 3600 seconds (1 hour).
+
. Click *Save Changes* or *Discard Changes*.

[NOTE]
The maximum request size is 1 GB.

[[understanding-timeout-behavior]]
== Understanding Timeout Behavior

CloudHub 2.0 uses multiple timeout settings to manage different phases of request handling:

Read Request Timeout (hardcoded at 300 seconds)::
The time the CloudHub 2.0 ingress controller waits to receive the complete request from the client. If the client takes longer than 300 seconds to send the entire request payload (for example, uploading a large CSV file), CloudHub 2.0 drops the connection. This timeout is not user-configurable and applies to both shared and private spaces.

Read Response Timeout (user-configurable)::
The time the CloudHub 2.0 ingress controller waits to receive a response from your Mule application after the request has been forwarded. You can configure this timeout in the *Advanced* tab of your private space settings. This setting controls how long your Mule application has to process the request and begin sending a response.

Connection Idle Timeout (hardcoded at 15 seconds)::
The time the CloudHub 2.0 ingress controller waits before closing an idle connection when no data is being transferred.

For long-running operations that exceed these timeout limits, consider implementing one of the following approaches:

* Break large requests into smaller chunks
* Use asynchronous processing patterns where the client receives an immediate acknowledgment and polls for results
* Implement keep-alive mechanisms to prevent idle timeout during processing

[[configure-ingress-load-balancer-log-levels]]
== Configure Default Ingress Load Balancer Log Levels

Expand Down