ASF GitHub Bot commented on CAMEL-12418:

Gr1f0n6x commented on issue #2283: CAMEL-12418: High CPU load on events watching
URL: https://github.com/apache/camel/pull/2283#issuecomment-381799061
   @davsclaus, I tried to use `ConsulEndpoint` for getting `CamelContext` as it 
implemented `CamelContextAware`.
   Also, i move field `scheduledExecutorService` to the `ConsulEventConsumer` 
class from the inner class `EventWatcher` because otherwise it will created 
more than one thread for this background work. 
   I'm not sure about `doStop` but i overrided it and shutdown executor there.
   Sorry for delay. I had some problems with building the project 

This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:

> camel-consul - High CPU load on events watching
> -----------------------------------------------
>                 Key: CAMEL-12418
>                 URL: https://issues.apache.org/jira/browse/CAMEL-12418
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-consul
>    Affects Versions: 2.21.0
>            Reporter: Viachaslau Tsikhanovich
>            Priority: Major
>             Fix For: 2.22.0
> Camel-Consul library expects EventClient to block requests and [passes number 
> of seconds to block request to 
> EventClient|https://github.com/apache/camel/blob/camel-2.21.0/components/camel-consul/src/main/java/org/apache/camel/component/consul/endpoint/ConsulEventConsumer.java#L59].
>  However Event HTTP Endpoint [does not support Blocking 
> Queries|https://www.consul.io/api/event.html] and EventClient [ignores passed 
> queryOptions|https://github.com/rickfast/consul-client/blob/1.1.1/src/main/java/com/orbitz/consul/EventClient.java#L164].
>  This results in high CPU usage because ConsulEventConsumer constantly makes 
> requests to Consul without any delay or blocking.
>  Maybe some _Thread.sleep_ could be added to _EventWatcher.watch(EventClient 
> client)_ before _client.listEvents_ call or any other fix to introduce delay 
> between _listEvents_ requests.

This message was sent by Atlassian JIRA

Reply via email to