[TACHYON-62] Netty

Netty implementation of the data server.

This patch is not done yet.  Its intent is to show the work I have right now for commenting.

This PR should not be merged until performance results come in.
Was watching Netty best practices which said to merge the two when you
can.  Was going to run tests today on the latest code to see how all the
different changes play together.

Saw your spark patch was 1 thread for boss and default for worker.  Was
there more reason behind that?
On Aug 20, 2014 12:01 AM, "Reynold Xin" <notifications@github.com> wrote:

> In core/src/main/java/tachyon/worker/netty/NettyDataServer.java:
>
> > +    // use pooled buffers
> > +    boot.option(ChannelOption.ALLOCATOR, PooledByteBufAllocator.DEFAULT);
> > +    boot.childOption(ChannelOption.ALLOCATOR, PooledByteBufAllocator.DEFAULT);
> > +    return boot;
> > +  }
> > +
> > +  /**
> > +   * Creates a default {@link io.netty.bootstrap.ServerBootstrap} where the channel and
> > +   * groups are preset. Current channel type supported are nio and epoll.
> > +   */
> > +  private static ServerBootstrap setupGroups(final ServerBootstrap boot, final ChannelType type) {
> > +    ThreadFactory workerFactory = createThreadFactory("data-server-%d");
> > +    EventLoopGroup bossGroup, workerGroup;
> > +    switch (type) {
> > +    case EPOLL:
> > +      bossGroup = workerGroup = new EpollEventLoopGroup(0, workerFactory);
>
> why the same thread pool?
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/amplab/tachyon/pull/333/files#r16461241>.
>