[ 
https://issues.apache.org/jira/browse/NIFI-4461?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16191460#comment-16191460
 ] 

ASF GitHub Bot commented on NIFI-4461:
--------------------------------------

Github user asfgit closed the pull request at:

    https://github.com/apache/nifi/pull/2193


> DistributedMapCacheClient/Server are inefficient when waiting for data to be 
> received from socket
> -------------------------------------------------------------------------------------------------
>
>                 Key: NIFI-4461
>                 URL: https://issues.apache.org/jira/browse/NIFI-4461
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Extensions
>            Reporter: Mark Payne
>            Assignee: Mark Payne
>             Fix For: 1.5.0
>
>
> The DistributedMapCacheClient and DistributedMapCacheServer use the  
> SocketChannelInputStream and SSLSocketChannelInputStream (and output streams) 
> for communicating over a socket in non-blocking mode. This is done to allow a 
> timeout to occur on a socket write. However, when reading from the socket, it 
> ends up calling Thread.sleep(10, TimeUnit.MILLISECONDS) when there is no data 
> available, and that can result in extremely slow performance. Instead, we 
> should using blocking mode when receiving data because it will throw a 
> timeout exception as we desire. When writing, we should continue using 
> non-blocking mode but sleep for far less than 10 milliseconds.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to