Do the following:
Ensure that your ThreadPoolTaskExecutor is properly configured to handle multiple concurrent tasks. By default, the thread pool might not be configured optimally for your use case.
Ensure that your ThreadPoolTaskExecutor is properly configured to handle multiple concurrent tasks. By default, the thread pool might not be configured optimally for your use case.
Add logging to verify that tasks are being executed concurrently. This will help you debug and understand the flow of execution.
Ensure that the controller method is correctly waiting for all futures to complete.