My patch will have this code to use Epoll on Linux systems if available or fallback to NIO if not.
Kishore Sent from my iPhone > On Mar 6, 2017, at 7:44 AM, Bobby Evans <ev...@yahoo-inc.com.INVALID> wrote: > > Sure, I am happy to add it in afterwards too. > > > - Bobby > > On Monday, March 6, 2017, 9:42:14 AM CST, Enrico Olivelli > <eolive...@gmail.com> wrote:Great, > so Kishore and JV, can you take this into account on the Netty 4 patch ? > > or maybe we can create a first baseline fom Kishore and than add the > "natvie EPoll" feature with a patch from Yahoo codebase. > > Bobby, can you put a comment on the JIRA for Netty 4 ? > > Thank you > Enrico > > 2017-03-06 16:29 GMT+01:00 Bobby Evans <ev...@yahoo-inc.com.invalid>: > >> The code we have will try for epoll and then fall back to nio if it does >> not work. >> There are a few places in the code that we do this, but they all more or >> less boil down to something like the following >> >> static EventLoopGroup getDefaultEventLoopGroup() { >> ThreadFactory threadFactory = new DefaultThreadFactory(" >> bookkeeper-io"); >> final int numThreads = Runtime.getRuntime().availableProcessors() >> * 2; >> >> if (SystemUtils.IS_OS_LINUX) { >> try { >> return new EpollEventLoopGroup(numThreads, threadFactory); >> } catch (Throwable t) { >> if (LOG.isDebugEnabled()) { >> LOG.debug("Could not use Netty Epoll event loop: {}", >> t.getMessage()); >> } >> return new NioEventLoopGroup(numThreads, threadFactory); >> } >> } else { >> return new NioEventLoopGroup(numThreads, threadFactory); >> } >> } >> ... >> if (eventLoopGroup instanceof EpollEventLoopGroup) { >> bootstrap.channel(EpollServerSocketChannel.class); >> } else { >> bootstrap.channel(NioServerSocketChannel.class); >> } >> >> >> >> - Bobby >> >> On Saturday, March 4, 2017, 8:29:52 AM CST, Enrico Olivelli < >> eolive...@gmail.com> wrote:Hi all, >> As we are switching to netty 4.1 maybe ee can look to this too: >> http://netty.io/wiki/native-transports.html >> >> Even if I have been using netty 4 for some year I did not get this >> promising feature on linux. >> >> Did any of you ever give it a try? >> >> Enrico >> -- >> >> >> -- Enrico Olivelli >>