public void start(SlaveNode slaveNode) { if(slaveNode==null){ throw new IllegalArgumentException("slaveNode is null"); } EventLoopGroup bossGroup = new NioEventLoopGroup(CommonConstants.BOSS_GROUP_SIZE, new DefaultThreadFactory("boss", true)); EventLoopGroup workerGroup = new NioEventLoopGroup(CommonConstants.WORKER_GROUP_SIZE, new DefaultThreadFactory("worker", true)); try { ServerBootstrap b = new ServerBootstrap(); b.option(ChannelOption.SO_BACKLOG, 1024); b.group(bossGroup, workerGroup) .channel(NioServerSocketChannel.class) .handler(new LoggingHandler(LogLevel.INFO)) .childHandler(new SlaveServerInitializer()); ChannelFuture future = b.bind(slaveNode.getPort()).sync(); LOGGER.info("SlaveServer Startup at port:{}",slaveNode.getPort()); // 等待服务端Socket关闭 future.channel().closeFuture().sync(); } catch (InterruptedException e) { LOGGER.error("InterruptedException:",e); } finally { bossGroup.shutdownGracefully(); workerGroup.shutdownGracefully(); } }
public void start() { EventLoopGroup bossGroup = new NioEventLoopGroup(CommonConstants.BOSS_GROUP_SIZE, new DefaultThreadFactory("boss", true)); EventLoopGroup workerGroup = new NioEventLoopGroup(CommonConstants.WORKER_GROUP_SIZE, new DefaultThreadFactory("worker", true)); try { ServerBootstrap b = new ServerBootstrap(); b.option(ChannelOption.SO_BACKLOG, 1024); b.group(bossGroup, workerGroup) .channel(NioServerSocketChannel.class) .handler(new LoggingHandler(LogLevel.INFO)) .childHandler(new MasterServerInitializer()); ChannelFuture future = b.bind(CommonConstants.SERVER_PORT).sync(); LOGGER.info("MasterServer Startup at port:{}",CommonConstants.SERVER_PORT); // 等待服务端Socket关闭 future.channel().closeFuture().sync(); } catch (InterruptedException e) { LOGGER.error("InterruptedException:",e); } finally { bossGroup.shutdownGracefully(); workerGroup.shutdownGracefully(); } }
public void start() { EventLoopGroup bossGroup = new NioEventLoopGroup(CommonConstants.BOSS_GROUP_SIZE, new DefaultThreadFactory("boss", true)); EventLoopGroup workerGroup = new NioEventLoopGroup(CommonConstants.WORKER_GROUP_SIZE, new DefaultThreadFactory("worker", true)); try { ServerBootstrap b = new ServerBootstrap(); b.option(ChannelOption.SO_BACKLOG, 1024); b.group(bossGroup, workerGroup) .channel(NioServerSocketChannel.class) .handler(new LoggingHandler(LogLevel.INFO)) .childHandler(new ServerInitializer()); ChannelFuture future = b.bind(CommonConstants.SERVER_PORT).sync(); logger.info("NettyServer Startup at port:{}",CommonConstants.SERVER_PORT); // 等待服务端Socket关闭 future.channel().closeFuture().sync(); } catch (InterruptedException e) { logger.error("InterruptedException:",e); } finally { bossGroup.shutdownGracefully(); workerGroup.shutdownGracefully(); } }
@Override public void bind(int port) { EventLoopGroup bossGroup = new NioEventLoopGroup(1); EventLoopGroup workerGroup = new NioEventLoopGroup(); ServerBootstrap bootstrap = new ServerBootstrap() .group(bossGroup, workerGroup) .channel(NioServerSocketChannel.class).localAddress(new InetSocketAddress(8888)) .childHandler(new ChannelInitializer<SocketChannel>() { @Override protected void initChannel(SocketChannel ch) throws Exception { ch.pipeline().addLast(new Encoder(serializer), new Decoder(serializer), new ProviderHandler()); } }); bootstrap.bind(port); }
@Override public void start() throws Exception { try { ServerBootstrap b = new ServerBootstrap() .group(bossGroup, workGroup) .channel(NioServerSocketChannel.class) .childHandler(serverInitializer); logger.info("Starting TcpChatServer... Port: " + port); channelFuture = b.bind(port).sync(); } finally { Runtime.getRuntime().addShutdownHook(new Thread() { @Override public void run() { shutdown(); } }); } }
@Override public void start() throws Exception { try { ServerBootstrap b = new ServerBootstrap() .group(bossGroup, workGroup) .channel(NioServerSocketChannel.class) .childHandler(serverInitializer); logger.info("Starting WebSocketChatServer... Port: " + port); channelFuture = b.bind(port).sync(); } finally { Runtime.getRuntime().addShutdownHook(new Thread() { @Override public void run() { shutdown(); } }); } }
private NettyServer(){ pGroup = new NioEventLoopGroup(); cGroup = new NioEventLoopGroup(); serverBootstrap = new ServerBootstrap(); serverBootstrap.group(pGroup, cGroup) .channel(NioServerSocketChannel.class) .option(ChannelOption.SO_BACKLOG, 1024) //设置日志 .handler(new LoggingHandler(LogLevel.INFO)) .childHandler(new ChannelInitializer<SocketChannel>() { protected void initChannel(SocketChannel sc) throws Exception { sc.pipeline().addLast(MarshallingCodeCFactory.buildMarshallingDecoder()); sc.pipeline().addLast(MarshallingCodeCFactory.buildMarshallingEncoder()); sc.pipeline().addLast(new ReadTimeoutHandler(60)); sc.pipeline().addLast(new NettyServerHandler()); } }); }
public static void main(String[] args) throws Exception { EventLoopGroup bossGroup = new NioEventLoopGroup(1); EventLoopGroup workerGroup = new NioEventLoopGroup(); ServerBootstrap b = new ServerBootstrap(); b.group(bossGroup, workerGroup) .channel(NioServerSocketChannel.class) .option(ChannelOption.SO_REUSEADDR, true) .childHandler(new ChannelInitializer<NioSocketChannel>() { @Override protected void initChannel(NioSocketChannel ch) throws Exception { ch.pipeline().addLast(new SimpleServerHandler()); } }); b.bind(8090).sync().channel().closeFuture().sync(); }
protected AbstractNettyServer(String serverName) { this.serverName = Objects.requireNonNull(serverName, "server name"); bootstrap = new ServerBootstrap(); if (Epoll.isAvailable()) { bootstrap.option(ChannelOption.SO_BACKLOG, 1024).channel(EpollServerSocketChannel.class) .childOption(ChannelOption.SO_LINGER, 0).childOption(ChannelOption.SO_REUSEADDR, true) .childOption(ChannelOption.SO_KEEPALIVE, true); log.info(serverName + " epoll init"); } else { bootstrap.channel(NioServerSocketChannel.class); log.info(serverName + " nio init"); } bootstrap.group(bossGroup, workerGroup).option(ChannelOption.ALLOCATOR, PooledByteBufAllocator.DEFAULT) .childOption(ChannelOption.ALLOCATOR, PooledByteBufAllocator.DEFAULT) .childOption(ChannelOption.TCP_NODELAY, true).childHandler(new ChannelInitializer<SocketChannel>() { @Override protected void initChannel(SocketChannel ch) throws Exception { initPipeline(ch.pipeline()); } }); }
@Override public void start(final int port) { bossGroup = new NioEventLoopGroup(bossGroupThreads); workerGroup = new NioEventLoopGroup(workerGroupThreads); ServerBootstrap serverBootstrap = new ServerBootstrap(); try { serverBootstrap .group(bossGroup, workerGroup) .channel(NioServerSocketChannel.class) .option(ChannelOption.SO_BACKLOG, backlogSize) .childOption(ChannelOption.SO_KEEPALIVE, true) .childOption(ChannelOption.TCP_NODELAY, true) .childHandler(serializeType.getServerChannelInitializer().newInstance()); channel = serverBootstrap.bind(port).sync().channel(); } catch (final Exception ex) { throw new ServerException(Server.SYSTEM_MESSAGE_ID, ex); } }
public void doOpen() throws InterruptedException { EventLoopGroup bossGroup = new NioEventLoopGroup(); EventLoopGroup workerGroup = new NioEventLoopGroup(); try{ ServerBootstrap serverBootstrap = new ServerBootstrap(); serverBootstrap.group(bossGroup,workerGroup); serverBootstrap.channel(NioServerSocketChannel.class); serverBootstrap.childHandler(new ChannelInitializer<SocketChannel>() { protected void initChannel(SocketChannel socketChannel) throws Exception { ChannelPipeline pipeline = socketChannel.pipeline(); pipeline.addLast(new ObjectDecoder(1024*1024, ClassResolvers.weakCachingConcurrentResolver(this.getClass().getClassLoader()))); pipeline.addLast(new ObjectEncoder()); pipeline.addLast((SimpleChannelInboundHandler)handler); } }); serverBootstrap.option(ChannelOption.SO_BACKLOG,1024); serverBootstrap.childOption(ChannelOption.SO_KEEPALIVE,true); ChannelFuture future = serverBootstrap.bind(address,port).sync(); //future.channel().closeFuture().sync(); }finally{ //workerGroup.shutdownGracefully(); //bossGroup.shutdownGracefully(); } }
/** * 启动服务 * * @throws Exception 异常 */ public void start() throws Exception { try { ServerBootstrap bootstrap = new ServerBootstrap(); bootstrap.group(bossGroup, workerGroup) .channel(NioServerSocketChannel.class) .childHandler(channelInitializer) .option(ChannelOption.SO_BACKLOG, aceServerConfig.getBackSize()) .childOption(ChannelOption.SO_KEEPALIVE, true) .childOption(ChannelOption.ALLOCATOR, PooledByteBufAllocator.DEFAULT); ChannelFuture future = bootstrap.bind(aceServerConfig.getPort()).sync(); System.out.println("ace server starter on port : " + aceServerConfig.getPort()); future.channel().closeFuture().sync(); } finally { close(); } }
public Receiver ( final ReceiverHandlerFactory factory, final SocketAddress addr ) { this.factory = factory; this.bossGroup = new NioEventLoopGroup (); this.workerGroup = new NioEventLoopGroup (); this.bootstrap = new ServerBootstrap (); this.bootstrap.group ( this.bossGroup, this.workerGroup ); this.bootstrap.channel ( NioServerSocketChannel.class ); this.bootstrap.option ( ChannelOption.SO_BACKLOG, 5 ); this.bootstrap.option ( ChannelOption.SO_REUSEADDR, true ); this.bootstrap.childHandler ( new ChannelInitializer<SocketChannel> () { @Override protected void initChannel ( final SocketChannel ch ) throws Exception { handleInitChannel ( ch ); } } ); this.channel = this.bootstrap.bind ( addr ).channel (); logger.info ( "Receiver running ..." ); }
@Override public synchronized void start() { bossGroup = new NioEventLoopGroup(); // (1) workerGroup = new NioEventLoopGroup(); try { b = new ServerBootstrap(); // (2) b.group(bossGroup, workerGroup) .channel(NioServerSocketChannel.class) .option(ChannelOption.SO_BACKLOG, 100) .handler(new LoggingHandler(LogLevel.INFO)) .childHandler(new SocketServerChannelInitializer(heartTime,socketService,applicationContext)); // Bind and start to accept incoming connections. b.bind(port); logger.info("socket: "+port+" starting...."); // Wait until the server socket is closed. // In this example, this does not happen, but you can do that to gracefully } catch (Exception e) { e.printStackTrace(); } }
private ChannelFuture bindToPlainSocket() throws InterruptedException { String hostname = configuration.getHostName(); int port = Integer.parseInt(configuration.getPlain().getPort()); ServerBootstrap b = new ServerBootstrap(); b.group(bossGroup, workerGroup) .channel(NioServerSocketChannel.class) .childHandler(new SocketChannelInitializer(ioExecutors)) .option(ChannelOption.SO_BACKLOG, 128) .childOption(ChannelOption.SO_KEEPALIVE, true); // Bind and start to accept incoming connections. ChannelFuture future = b.bind(hostname, port).sync(); LOGGER.info("Listening AMQP on " + hostname + ":" + port); return future; }
private ChannelFuture bindToSslSocket() throws InterruptedException, CertificateException, UnrecoverableKeyException, NoSuchAlgorithmException, KeyStoreException, KeyManagementException, IOException { String hostname = configuration.getHostName(); int port = Integer.parseInt(configuration.getSsl().getPort()); ServerBootstrap b = new ServerBootstrap(); b.group(bossGroup, workerGroup) .channel(NioServerSocketChannel.class) .childHandler(new SslSocketChannelInitializer(ioExecutors, new SslHandlerFactory(configuration))) .option(ChannelOption.SO_BACKLOG, 128) .childOption(ChannelOption.SO_KEEPALIVE, true); // Bind and start to accept incoming connections. ChannelFuture future = b.bind(hostname, port).sync(); LOGGER.info("Listening AMQP/" + configuration.getSsl().getProtocol() + " on " + hostname + ":" + port); return future; }
public void run() { try { // Configure the server. EventLoopGroup group = new NioEventLoopGroup(); try { ServerBootstrap b = new ServerBootstrap(); b.option(ChannelOption.SO_BACKLOG, 1024); b.group(group) .channel(NioServerSocketChannel.class) .handler(new LoggingHandler(LogLevel.INFO)) .childHandler(new Http2ServerInitializer(mSslCtx)); sServerChannel = b.bind(PORT).sync().channel(); Log.i(TAG, "Netty HTTP/2 server started on " + getServerUrl()); sBlock.open(); sServerChannel.closeFuture().sync(); } finally { group.shutdownGracefully(); } Log.i(TAG, "Stopped Http2TestServerRunnable!"); } catch (Exception e) { Log.e(TAG, e.toString()); } }
public void start() { bossGroup = new NioEventLoopGroup(); workerGroup = new NioEventLoopGroup(); ServerBootstrap bootstrap = new ServerBootstrap(); bootstrap .group(bossGroup, workerGroup) .channel(NioServerSocketChannel.class) .option(ChannelOption.SO_BACKLOG, 1024) .childOption(ChannelOption.SO_KEEPALIVE, true) .childHandler(new PlayerInitializer(this)); try { channel = bootstrap.bind(server.getConfig().get("server.port").getAsShort()).sync().channel(); } catch (InterruptedException e) { e.printStackTrace(); } }
public void start() throws InterruptedException { EventLoopGroup acceptors = new NioEventLoopGroup(socksProperties.getAcceptors()); EventLoopGroup workers = new NioEventLoopGroup(); EventLoopGroup forwarders = new NioEventLoopGroup(); try { ServerBootstrap bootstrap = new ServerBootstrap(); bootstrap.group(acceptors, workers) .channel(NioServerSocketChannel.class) .option(ChannelOption.SO_BACKLOG, socksProperties.getBacklog()) .option(ChannelOption.CONNECT_TIMEOUT_MILLIS, socksProperties.getConnectTimeoutMillis()) .childHandler(new Socks5WorkerChannelInitializer(socksProperties, forwarders)); Address address = socksProperties.getListen(); ChannelFuture future = bootstrap.bind(address.getHost(), address.getPort()).sync(); future.channel().closeFuture().sync(); } finally { forwarders.shutdownGracefully(); workers.shutdownGracefully(); acceptors.shutdownGracefully(); } }
@Override public void run(String... args) throws Exception { NioEventLoopGroup group = new NioEventLoopGroup(); ServerBootstrap bootstrap = new ServerBootstrap(); bootstrap.group(group) .channel(NioServerSocketChannel.class) .childHandler(serverChannelInitializer); ChannelFuture channelFuture = bootstrap.bind(new InetSocketAddress(30232)); channelFuture.addListener(future -> { if (future.isSuccess()) { logger.info("「Netty」服务器启动成功"); } else { logger.info("「Netty」服务器启动失败"); } }); }
public static void main(String[] args) throws Exception { EventLoopGroup bossGroup = new NioEventLoopGroup(); EventLoopGroup workerGroup = new NioEventLoopGroup(); try{ ServerBootstrap serverBootstrap = new ServerBootstrap(); serverBootstrap.group(bossGroup,workerGroup) .channel(NioServerSocketChannel.class) .childHandler(new HttpServer()); ChannelFuture channelFuture = serverBootstrap .bind(new InetSocketAddress("0.0.0.0", PORT)) .sync(); channelFuture.channel().closeFuture().sync(); } finally { bossGroup.shutdownGracefully(); workerGroup.shutdownGracefully(); } }
public void start() { ServerBootstrap b = new ServerBootstrap(); b.group(workerGroup) .channel(NioServerSocketChannel.class) .option(ChannelOption.SO_KEEPALIVE, true) .childHandler(new ChannelInitializer<SocketChannel>() { @Override protected void initChannel(SocketChannel socketChannel) throws Exception { System.out.println("New client connected! (" + socketChannel.localAddress() + ")"); socketChannel.pipeline().addLast(new StringEncoder()).addLast(new StringEncoder()).addLast(new EchoServerHandler()); } }); f = b.bind(port); }
private void startServer() throws Exception { Runtime.getRuntime().addShutdownHook(new Thread(this::shutdown)); try { ServerBootstrap bootstrap = new ServerBootstrap(); bootstrap.group(masterGroup, slaveGroup) .channel(NioServerSocketChannel.class) .childHandler(new HttpServerInitializer(razor)) .option(ChannelOption.SO_BACKLOG, 128) .childOption(ChannelOption.SO_KEEPALIVE, true); this.channel = bootstrap.bind(env.get(ENV_KEY_SERVER_HOST, DEFAULT_SERVER_HOST), env.getInt(ENV_KEY_SERVER_PORT, DEFAULT_SERVER_PORT)).sync().channel(); log.info("{} started and listen on {}", HttpServerHandler.class.getName(), channel.localAddress()); } catch (final InterruptedException e){ log.error("Netty server startup failed, error: {}", e.getMessage()); } }
public void start(){ ServerBootstrap bootstrap = new ServerBootstrap(); bootstrap.group(workerGroup,bossGroup) .channel(NioServerSocketChannel.class) .childHandler(new TCPHandlerInitializer(this)) .option(ChannelOption.SO_BACKLOG, 512) .childOption(ChannelOption.SO_KEEPALIVE, true); Channel serverChannel = bootstrap.bind(new InetSocketAddress(port)).channel(); ChannelFuture future = serverChannel.closeFuture(); try { System.out.println("MQTT服务器已启动..."); future.sync(); } catch (InterruptedException e) { e.printStackTrace(); } }
@Override public void init() { super.init(); b.group(bossGroup, workGroup) .channel(NioServerSocketChannel.class) .option(ChannelOption.SO_KEEPALIVE, true) .option(ChannelOption.TCP_NODELAY, true) .option(ChannelOption.SO_BACKLOG, 1024) .localAddress(new InetSocketAddress(port)) .childHandler(new ChannelInitializer<SocketChannel>() { @Override protected void initChannel(SocketChannel ch) throws Exception { ch.pipeline().addLast(defLoopGroup, new SdkServerDecoder(12), // 自定义解码器 new SdkServerEncoder(), // 自定义编码器 new SdkServerHandler(snowFlake) // 自定义处理器 ); } }); }
public void start() { EventLoopGroup boss = new NioEventLoopGroup(1); EventLoopGroup worker = new NioEventLoopGroup(); try { ServerBootstrap bootstrap = new ServerBootstrap(); bootstrap.group(boss,worker) .channel(NioServerSocketChannel.class) .childHandler(new HttpChannelInitializer(list)); ChannelFuture future = bootstrap.bind(port).sync(); log.info("start listen in port {}", port); future.channel().closeFuture().sync(); } catch (Exception e ) { e.printStackTrace(); } finally { boss.shutdownGracefully(); worker.shutdownGracefully(); } }
/** *@description 监听指定端口 *@time 创建时间:2017年7月21日下午3:50:26 *@param port *@throws InterruptedException *@author dzn */ public void bind(int port) throws InterruptedException{ EventLoopGroup bossGroup = new NioEventLoopGroup(); EventLoopGroup workGroup = new NioEventLoopGroup(); try{ ServerBootstrap server = new ServerBootstrap(); server.group(bossGroup, workGroup) .channel(NioServerSocketChannel.class) .option(ChannelOption.SO_BACKLOG, 1024) .childHandler(new ChildChannelHandler()); ChannelFuture cf = server.bind(port).sync(); System.out.println("服务器已启动, 监控端口号为 : " + port); cf.channel().closeFuture().sync(); }finally{ bossGroup.shutdownGracefully(); workGroup.shutdownGracefully(); } }
/** *@description 监听指定端口 *@time 创建时间:2017年7月21日下午3:50:26 *@param port *@throws InterruptedException *@author dzn */ public void bind(int port) throws InterruptedException{ //分配任务线程池 EventLoopGroup bossGroup = new NioEventLoopGroup(); //执行任务线程池 EventLoopGroup workGroup = new NioEventLoopGroup(); try{ //netty Server端 ServerBootstrap server = new ServerBootstrap(); server.group(bossGroup, workGroup) .channel(NioServerSocketChannel.class) .option(ChannelOption.SO_BACKLOG, 1024) .childHandler(new ChildChannelHandler()); //启动netty服务器 ChannelFuture cf = server.bind(port).sync(); System.out.println("服务器已启动, 监控端口号为 : " + port); //等待服务器端关闭 cf.channel().closeFuture().sync(); }finally{ bossGroup.shutdownGracefully(); workGroup.shutdownGracefully(); } }
@Override public void start(Config config) throws Exception { EventLoopGroup bossGroup = new NioEventLoopGroup(1); EventLoopGroup workerGroup = new NioEventLoopGroup(); int port = config.getPort(); try { ServerBootstrap b = new ServerBootstrap(); b.group(bossGroup, workerGroup) .channel(NioServerSocketChannel.class) .option(ChannelOption.SO_BACKLOG, 1024) .option(ChannelOption.CONNECT_TIMEOUT_MILLIS, 1000) .childHandler(new SocksServerInitializer(config)); log.info("Socks5 server bind port: {}", port); b.bind(port).sync().channel().closeFuture().sync(); } finally { bossGroup.shutdownGracefully(); workerGroup.shutdownGracefully(); } }
public Future startAsync() { bossGroup = new NioEventLoopGroup(1); workerGroup = new NioEventLoopGroup(); bootstrap = new ServerBootstrap(); bootstrap.group(bossGroup, workerGroup) .channel(NioServerSocketChannel.class) .childHandler(new SocksServerInitializer()) .childAttr(OPTION_ATTRIBUTE_KEY, option); return bootstrap.bind(option.getLocalHost(), option.getLocalPort()).addListener( new ChannelFutureListener() { @Override public void operationComplete(ChannelFuture future) throws Exception { if (infoEnable) { if (future.isSuccess()) { logger.info("Listening on local port {}", option.getLocalPort()); } else { logger.info("Shadowsocks client startup failed", future.cause()); } } } }); }
private void bind() throws InterruptedException { EventLoopGroup boss = new NioEventLoopGroup(1); EventLoopGroup worker = new NioEventLoopGroup(); ServerBootstrap bootstrap = new ServerBootstrap(); bootstrap.group(boss, worker) .channel(NioServerSocketChannel.class) .option(ChannelOption.SO_BACKLOG, 128) .option(ChannelOption.TCP_NODELAY, true) .childOption(ChannelOption.SO_KEEPALIVE, true) .childHandler(new NettyServerInitializer()); ChannelFuture f = bootstrap.bind(port).sync(); if (f.isSuccess()) { logger.info("server start---------------"); } }
public void start(){ logger.debug( "--Socket Server will start------------" ) ; boss = new NioEventLoopGroup() ; work = new NioEventLoopGroup() ; int port = CommonConfig.getInteger( SOCKET_PORT1 ); try { logger.info( "Netty Server[" + port + "] started..." ) ; ServerBootstrap b = new ServerBootstrap() ; b.group( boss , work ) ; b.channel( NioServerSocketChannel.class ) ; b.childHandler( nettyInitializer ) ; b.bind( port ).sync().channel().closeFuture().sync() ; } catch ( Exception e ) { String err_string = e.toString(); if( err_string.indexOf( "childHandler" ) != -1 ){ logger.error( "Netty Server[" + port + "] NettyInitializer can't find." ) ; }else{ logger.error( "Netty Server[" + port + "] onload err:" + e.toString() , e ) ; } } finally { logger.error( "Netty Server[" + port + "] will be unload..." ) ; unload(); } }
public void start(int port) throws Exception { EventLoopGroup bossGroup = new NioEventLoopGroup(1); EventLoopGroup workerGroup = new NioEventLoopGroup(); try { ServerBootstrap bootstrap = new ServerBootstrap(); bootstrap.group(bossGroup, workerGroup) .channel(NioServerSocketChannel.class) .childHandler(new ChannelInitializer<SocketChannel>() { protected void initChannel(SocketChannel ch) throws Exception { ch.pipeline().addLast(new MqttDecoder()); ch.pipeline().addLast(MqttEncoder.INSTANCE); ch.pipeline().addLast(new MqttInBoundHandler()); } }) .option(ChannelOption.SO_BACKLOG, 1024) .childOption(ChannelOption.SO_KEEPALIVE, true); ChannelFuture future = bootstrap.bind(port).sync(); future.channel().closeFuture().sync(); } finally { bossGroup.shutdownGracefully(); workerGroup.shutdownGracefully(); } }
public static void main(String[] args) throws Exception { // Configure the server. EventLoopGroup group = new NioEventLoopGroup(); try { ServerBootstrap b = new ServerBootstrap(); b.group(group) .channel(NioServerSocketChannel.class) .childHandler(new ChannelInitializer<SocketChannel>() { @Override public void initChannel(SocketChannel ch) throws Exception { ChannelPipeline p = ch.pipeline(); p.addLast(new TcpRttDecoder()) .addLast(new TcpRttServerHandler()); } }).childOption(ChannelOption.TCP_NODELAY, true); // Start the server. ChannelFuture f = b.bind(PORT).sync(); // Wait until the server socket is closed. f.channel().closeFuture().sync(); } finally { // Shut down all event loops to terminate all threads. group.shutdownGracefully(); } }
public static void main(String... args) throws Exception { System.out.println("starting server"); String host = System.getProperty("host", "0.0.0.0"); int port = Integer.getInteger("port", 8001); boolean useEpoll = Boolean.getBoolean("usePoll"); Class channel; if (useEpoll) { channel = EpollServerSocketChannel.class; } else { channel = NioServerSocketChannel.class; } ThreadFactory tf = new DefaultThreadFactory("server-elg-", true /*daemon */); NioEventLoopGroup boss = new NioEventLoopGroup(1, tf); NioEventLoopGroup worker = new NioEventLoopGroup(0, tf); NettyServerBuilder builder = NettyServerBuilder.forPort(port) .bossEventLoopGroup(boss) .workerEventLoopGroup(worker) .channelType(channel) .addService(new DefaultService()) .directExecutor() .maxConcurrentCallsPerConnection(Runtime.getRuntime().availableProcessors() * 256) .flowControlWindow(NettyChannelBuilder.DEFAULT_FLOW_CONTROL_WINDOW * 10); io.grpc.Server start = builder.build(); start.start(); System.out.println("server started"); start.awaitTermination(); }
public void start() throws Exception { // Configure SSL. final SslContext sslCtx; if (SSL) { SelfSignedCertificate ssc = new SelfSignedCertificate(); sslCtx = SslContextBuilder.forServer(ssc.certificate(), ssc.privateKey()).build(); } else { sslCtx = null; } // Configure the server. EventLoopGroup bossGroup = new NioEventLoopGroup(1); EventLoopGroup workerGroup = new NioEventLoopGroup(); try { ServerBootstrap b = new ServerBootstrap(); b.group(bossGroup, workerGroup).channel(NioServerSocketChannel.class).option(ChannelOption.SO_BACKLOG, 100) .handler(new LoggingHandler(LogLevel.INFO)).childHandler(new FileServerHandlerInitializer()); // Start the server. ChannelFuture f = b.bind(getHostAddress(), PORT).sync(); // System.out.println("server is started "+f.isSuccess()); setStarted(true); // Wait until the server socket is closed. f.channel().closeFuture().sync(); } finally { // Shut down all event loops to terminate all threads. bossGroup.shutdownGracefully(); workerGroup.shutdownGracefully(); } }
public void start() { Configuration config = Configuration.INSTANCE; InternalLoggerFactory.setDefaultFactory(Slf4JLoggerFactory.INSTANCE); bossGroup = new NioEventLoopGroup(1); workerGroup = new NioEventLoopGroup(); try { ServerBootstrap bootstrap = new ServerBootstrap(); bootstrap.group(bossGroup, workerGroup) .channel(NioServerSocketChannel.class) .childHandler(new ChannelInitializer<SocketChannel>() { @Override protected void initChannel(SocketChannel socketChannel) throws Exception { socketChannel.pipeline() .addLast("logging", new LoggingHandler(LogLevel.DEBUG)) .addLast(new SocksInitRequestDecoder()) .addLast(new SocksMessageEncoder()) .addLast(new Socks5Handler()) .addLast(Status.TRAFFIC_HANDLER); } }); log.info("\tStartup {}-{}-client [{}{}]", Constants.APP_NAME, Constants.APP_VERSION, config.getMode(), config.getMode().equals("socks5") ? "" : ":" + config.getProtocol()); new Thread(() -> new UdpServer().start()).start(); ChannelFuture future = bootstrap.bind(config.getLocalHost(), config.getLocalPort()).sync(); future.addListener(future1 -> log.info("\tTCP listening at {}:{}...", config.getLocalHost(), config.getLocalPort())); future.channel().closeFuture().sync(); } catch (Exception e) { log.error("\tSocket bind failure ({})", e.getMessage()); } finally { log.info("\tShutting down"); bossGroup.shutdownGracefully(); workerGroup.shutdownGracefully(); } }
public void start() { Configuration config = Configuration.INSTANCE; InternalLoggerFactory.setDefaultFactory(Slf4JLoggerFactory.INSTANCE); EventLoopGroup bossGroup = new NioEventLoopGroup(1); EventLoopGroup workerGroup = new NioEventLoopGroup(); try { ServerBootstrap bootstrap = new ServerBootstrap(); bootstrap.group(bossGroup, workerGroup) .channel(NioServerSocketChannel.class) .childHandler(new ChannelInitializer<SocketChannel>() { protected void initChannel(SocketChannel socketChannel) throws Exception { socketChannel.pipeline() .addLast("logging", new LoggingHandler(LogLevel.DEBUG)) .addLast(new XConnectHandler()); if (config.getReadLimit() != 0 || config.getWriteLimit() != 0) { socketChannel.pipeline().addLast( new GlobalTrafficShapingHandler(Executors.newScheduledThreadPool(1), config.getWriteLimit(), config.getReadLimit()) ); } } }); log.info("\tStartup {}-{}-server [{}]", Constants.APP_NAME, Constants.APP_VERSION, config.getProtocol()); new Thread(() -> new UdpServer().start()).start(); ChannelFuture future = bootstrap.bind(config.getHost(), config.getPort()).sync(); future.addListener(future1 -> log.info("\tTCP listening at {}:{}...", config.getHost(), config.getPort())); future.channel().closeFuture().sync(); } catch (Exception e) { log.error("\tSocket bind failure ({})", e.getMessage()); } finally { log.info("\tShutting down and recycling..."); bossGroup.shutdownGracefully(); workerGroup.shutdownGracefully(); Configuration.shutdownRelays(); } System.exit(0); }
@Override protected void doStart() { try { bootstrap.group(bossGroup, workerGroup).channel(NioServerSocketChannel.class); bootstrap.option(ChannelOption.SO_BACKLOG, 1024); bootstrap.option(ChannelOption.SO_REUSEADDR, true); bootstrap.childOption(ChannelOption.TCP_NODELAY, true); bootstrap.childOption(ChannelOption.SO_KEEPALIVE, true); bootstrap.childOption(ChannelOption.CONNECT_TIMEOUT_MILLIS, 3000); bootstrap.localAddress(serverconfig.getListenPort()); bootstrap.childHandler(new ChannelInitializer<SocketChannel>() { @Override public void initChannel(SocketChannel ch) throws IOException { ch.pipeline().addLast("idleState", new IdleStateHandler(0, 0, 60, TimeUnit.SECONDS)); ch.pipeline().addLast("heartbeat", new HeartbeatHandler()); ch.pipeline().addLast(new KyroMsgDecoder()); ch.pipeline().addLast(new KyroMsgEncoder()); ch.pipeline().addLast("invoker", new NettyServerHandler()); } }); ChannelFuture channelFuture = this.bootstrap.bind().sync(); // channelFuture.channel().closeFuture().sync(); logger.info("server started on port:" + serverconfig.getListenPort()); respScheduler.scheduleAtFixedRate(new Runnable() { @Override public void run() { scanResponseTable(5000); } }, 60 * 1000, 60 * 1000, TimeUnit.MILLISECONDS); } catch (InterruptedException e) { logger.error("", e); System.exit(-1); } }