You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flink.apache.org by "Nicolas Raga (Jira)" <ji...@apache.org> on 2021/08/05 20:55:00 UTC

[jira] [Created] (FLINK-23654) Allow configuration for number of jobmanager-future threads

Nicolas Raga created FLINK-23654:
------------------------------------

             Summary: Allow configuration for number of jobmanager-future threads
                 Key: FLINK-23654
                 URL: https://issues.apache.org/jira/browse/FLINK-23654
             Project: Flink
          Issue Type: Improvement
          Components: Runtime / REST
            Reporter: Nicolas Raga


The JobManagerSharedServices futureExecutor is used for asynchronous request in multiple Flink components. When the JobMaster creates the execution graph, it passes the *scheduledExecutorService* (which is the jobManagerSharedServices.getScheduledExecutorService) to both the *futureExecutor* and the *ioExecutor.* In the ExecutionGraph, the *ioExecutor* is the executor which is used to execute blocking I/O operations. It is also passed in to the *CheckpointCoordinator* which uses it for asynchronous calls like disposing pending checkpoints, clean up failed checkpoints, etc. The *futureExecutor*  is even passed on to the *Execution* class, which is then used to dispatch callbacks from futures and asynchronous RPC calls from within vertexes!

Lastly this executor is also used to process asynchronous requests from the Flink REST endpoint. Hence, using the endpoint for monitoring during emission of large checkpoints or blocking operations on this threadpool cause degraded performance. We have already been able to test that an increase in this thread count allows to faster responses to incoming requests. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)