Support Questions

Find answers, ask questions, and share your expertise

is there any idle connection timeout for ConsumeKafka and PublishKafka processors in NIFI

avatar
Contributor

Hi ,

is there any idle connection timeout for ConsumeKafka and PublishKafka processors in NIFI.

Do these processors go to idle state if no data in incoming ??

if yes then what is the time in which they will go to idle state in case of no data is coming ??? and is there any way to set this time ourself ???

1 ACCEPTED SOLUTION

avatar
Master Mentor

@Rohit1997jio 

Most NiFi processors that are "started/running" are not continuously consuming threads. The processor configurable scheduling controls how often the component processor requests a thread from the NiFi controller thread pool to execute it's code.  By default processors have a run schedule of 0 which means that the processor would get scheduled to run as often as possible. Should execution result in no processing of data (FlowFiles), NiFi controller will delay next scheduled execution of that processor for 1 sec before it can be scheduled again (this logic prevents excessive CPU usage by processor components). 

The Kafka processors simply execute Kafka Client libraries and support adding dynamic properties to the processors configuration that impact that client library behavior.  The Apache NiFi documentation for each component will identify if "Dynamic Properties" are supported:
https://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi/nifi-kafka-2-6-nar/1.24.0/org.apac...

MattWho_0-1703171299542.png

In the case of the consume and publish Kafka component processors, dynamic properties are supported.  The dynamic properties are  limited to those allowed by the specific kafka client library version:
https://kafka.apache.org/documentation.html#configuration

If you found any of the suggestions/solutions provided helped you with your issue, please take a moment to login and click "Accept as Solution" on one or more of them that helped.

Thank you,
Matt

View solution in original post

1 REPLY 1

avatar
Master Mentor

@Rohit1997jio 

Most NiFi processors that are "started/running" are not continuously consuming threads. The processor configurable scheduling controls how often the component processor requests a thread from the NiFi controller thread pool to execute it's code.  By default processors have a run schedule of 0 which means that the processor would get scheduled to run as often as possible. Should execution result in no processing of data (FlowFiles), NiFi controller will delay next scheduled execution of that processor for 1 sec before it can be scheduled again (this logic prevents excessive CPU usage by processor components). 

The Kafka processors simply execute Kafka Client libraries and support adding dynamic properties to the processors configuration that impact that client library behavior.  The Apache NiFi documentation for each component will identify if "Dynamic Properties" are supported:
https://nifi.apache.org/docs/nifi-docs/components/org.apache.nifi/nifi-kafka-2-6-nar/1.24.0/org.apac...

MattWho_0-1703171299542.png

In the case of the consume and publish Kafka component processors, dynamic properties are supported.  The dynamic properties are  limited to those allowed by the specific kafka client library version:
https://kafka.apache.org/documentation.html#configuration

If you found any of the suggestions/solutions provided helped you with your issue, please take a moment to login and click "Accept as Solution" on one or more of them that helped.

Thank you,
Matt