Data Action Timeout (504) During High-Throughput JMeter Load Test

Just noticed that our custom Data Action integration fails consistently when we push concurrent threads beyond 200 in our JMeter load test setup. The environment is Genesys Cloud EU-West, and we are using Architect version 2024.1. The specific error returned in the debug logs is HTTP 504 Gateway Timeout on the POST request to our middleware endpoint, but the real issue seems to be on the Genesys side hanging the connection before it even hits our server. We are trying to validate a customer record against an external legacy DB during an inbound call flow. The flow is simple: Greeting → Data Action (Validate Customer) → Play Prompt. Under normal single-threaded testing, the response time is around 200ms, which is fine. However, when we scale to 500 concurrent calls simulated via JMeter using the WebSocket API to inject calls, the Data Action node starts timing out after 5000ms. The logs show the request leaving Genesys but no response coming back, and eventually, the call drops with a ‘Resource Unavailable’ message. We have checked our middleware servers, and they are handling the load fine with no CPU spikes. It feels like Genesys Cloud is hitting some internal rate limit or connection pool exhaustion for outbound HTTP requests from Architect. Is there a known limit on concurrent Data Action executions per organization? We are a beginner in terms of load testing Genesys Cloud at scale, so we might be missing a configuration setting. We tried increasing the timeout in Architect to 10000ms, but it just delays the failure, it does not fix it. Also, we are not seeing any 429 errors in the API monitor, which is confusing. The JMeter script uses the standard Genesys Cloud SDK for Java to create the calls, and we are reusing WebSocket connections where possible. Can anyone share their experience with Data Action throughput limits? We need to know if we can expect this component to handle 1000+ concurrent executions or if we need to redesign the flow to use a different pattern, like pre-fetching data via the API before the call connects. Any insights on best practices for load testing Data Actions would be appreciated. We are currently stuck and cannot validate our capacity planning numbers.

Have you tried adjusting the connection pooling strategy in your JMeter script? This timeout usually stems from how the client handles concurrent HTTP connections rather than Genesys Cloud capacity limits.

When pushing beyond 200 threads, aggressive socket creation often exhausts the available file descriptors or triggers intermediate proxy timeouts before the request reaches the Genesys API gateway. The 504 error suggests the connection is hanging at the gateway level, likely due to stale keep-alive connections.

Check your HTTP Request Defaults in JMeter. Ensure “Use multipart/form-data for POST” is unchecked if not sending files, and critically, verify the “Connection Timeout” and “Response Timeout” settings. Set them explicitly to 30000ms. Also, enable “Keep-Alive” only if your middleware supports it efficiently. If the middleware is slow, Genesys Cloud will drop the idle connection. Consider reducing the RPS ramp-up interval to allow the load balancer to distribute traffic evenly. This approach aligns with standard digital channel load testing practices to prevent false positives during performance validation.

Take a look at at the timeout configuration within the Architect flow itself.
Cause: The Data Action node defaults to a 5-second timeout, which expires before high-latency middleware responds under load.
Solution: Increase the timeout value in the Data Action node settings to accommodate the observed latency during peak throughput.