.newCachedThreadPool(), Executors.newCachedThreadPool(),
Runtime.getRuntime().availableProcessors() * 2 + 1);
bootstrap = new ServerBootstrap(factory);
// Create the global ChannelGroup
channelGroup = new DefaultChannelGroup(MessagingServer.class.getName());
// 200 threads max, Memory limitation: 1MB by channel, 1GB global, 100 ms of timeout
OrderedMemoryAwareThreadPoolExecutor pipelineExecutor = new OrderedMemoryAwareThreadPoolExecutor(
200, 1048576, 1073741824, 100, TimeUnit.MILLISECONDS, Executors
.defaultThreadFactory());