[ 
https://issues.apache.org/jira/browse/NIFI-3235?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Bryan Rosander updated NIFI-3235:
---------------------------------
    Description: 
EvaluateJsonPath does a lot of work in every onTrigger() that can be done when 
scheduled.  This has the effect of making it take more cpu cycles than 
necessary to do its job.

Initializing the JsonPath objects in a ThreadLocal and getting the properties 
from the ProcessContext a single time in onSchedule() should reduce the amount 
of CPU time this processor needs to perform a given task.

  was:
EvaluateJsonPath does a lot of work in every onTrigger() that can be done when 
scheduled.  This has the effect of making it take more cpu cycles than 
necessary to do its job.

Initializing the JsonPath objects in a ThreadLocal because they aren't 
thread-safe and getting the properties from the ProcessContext a single time in 
onSchedule() should reduce the amount of CPU time this processor needs to 
perform a given task.


> EvaluateJsonPath performance improvements
> -----------------------------------------
>
>                 Key: NIFI-3235
>                 URL: https://issues.apache.org/jira/browse/NIFI-3235
>             Project: Apache NiFi
>          Issue Type: Improvement
>            Reporter: Bryan Rosander
>            Priority: Minor
>         Attachments: after.png, before.png
>
>
> EvaluateJsonPath does a lot of work in every onTrigger() that can be done 
> when scheduled.  This has the effect of making it take more cpu cycles than 
> necessary to do its job.
> Initializing the JsonPath objects in a ThreadLocal and getting the properties 
> from the ProcessContext a single time in onSchedule() should reduce the 
> amount of CPU time this processor needs to perform a given task.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to