Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 13 Apr 2017 00:36:59 +0200
From:      Kamil Misuth <kmisuth@ethome.sk>
To:        freebsd-java@FreeBSD.org
Subject:   State of Java NIO/KQueue
Message-ID:  <57b20c2254bea4d79844d133f362c129@pop3-imap.dnsserver.eu>

next in thread | raw e-mail | index | archive | help
Greetings,

I am trying out Apache Ignite on FreeBSD 11 with OpenJDK (7/8) and would 
really like to make it work well.

Ignite uses NIO for inter node communication. When debugging I was able 
to confirm that KQueueSelectorImpl is used.
For the purpose of testing I've used loopback interface with multiple 
aliases, however, for bigger payloads the communication seriously
slows down from time to time and nodes would experience >3 second delay 
on reading side (I have no hard evidence collected yet).
Interestingly, this would not happen for small payloads like serveral 
bytes.
I went thought Ignite's selector loop and it looks OKish.
I've tested my sample code on CentOS 7 with epoll selector using 
loopback in similar fashion and everything worked well even for larger 
payload with no hiccups.
Some old Zookeeper docs would say NIO on FreeBSD is broken but then I 
also came across this 
https://issues.apache.org/jira/browse/ZOOKEEPER-1509 .

So, my questions are:
1) How stable is KQueueSelectorImpl in current version of OpenJDK 8/7?
2) What would be the best way to start examining what's happening where 
for locating the possible bottle neck?
3) Could this be something buffer related?

Thanks,

Kamil






Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?57b20c2254bea4d79844d133f362c129>