[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.
Latest versions of Netty shouldn't require this anymore:
https://github.com/netty/netty/pull/2284.
 On Aug 20, 2014 3:48 AM, "Mubarak Seyed" <notifications@github.com> wrote:

> In core/src/main/java/tachyon/worker/netty/NettyDataServer.java:
>
> > +    // according to the docs, a InetSocketAddress is returned and the user must down-cast
> > +    return ((InetSocketAddress) CHANNEL_FUTURE.channel().localAddress()).getPort();
> > +  }
> > +
> > +  @Override
> > +  public boolean isClosed() {
> > +    return BOOTSTRAP.group().isShutdown();
> > +  }
> > +
> > +  private static ServerBootstrap createBootstrap() {
> > +    ServerBootstrap boot = new ServerBootstrap();
> > +    boot = setupGroups(boot, WorkerConf.get().NETTY_CHANNEL_TYPE);
> > +
> > +    // use pooled buffers
> > +    boot.option(ChannelOption.ALLOCATOR, PooledByteBufAllocator.DEFAULT);
> > +    boot.childOption(ChannelOption.ALLOCATOR, PooledByteBufAllocator.DEFAULT);
>
> Not sure whether we need to configure areas using system properties for
> PooledByteBufAllocator
>
> -Dio.netty.allocator.numDirectArenas=... -Dio.netty.allocator.numHeapArenas=...
>
> Reference:
> http://mail-archives.apache.org/mod_mbox/flink-commits/201406.mbox/%3Cd2256046eecf4238a98ddf0625a31e93@git.apache.org%3E
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/amplab/tachyon/pull/333/files#r16468940>.
>