new RoundRobinConnectionDistributor(clientTransport, false, false));
transport.setIOStrategy(loadIOStrategy(transportConfig.getIOStrategy())); transport.setNIOChannelDistributor( new RoundRobinConnectionDistributor( transport, Boolean.parseBoolean(transportConfig.getDedicatedAcceptorEnabled())));
new RoundRobinConnectionDistributor( transport, Boolean.parseBoolean(transportConfig.getDedicatedAcceptorEnabled())));
transport.setNIOChannelDistributor(new RoundRobinConnectionDistributor(transport, true, true));
public GrizzlyServerManager(ExecutorService selectorPool, ExecutorService workerPool, ExecutorService idleTimeoutExecutorService, HttpListenerRegistry httpListenerRegistry, TcpServerSocketProperties serverSocketProperties, int selectorCount) { this.httpListenerRegistry = httpListenerRegistry; requestHandlerFilter = new GrizzlyRequestDispatcherFilter(httpListenerRegistry); sslFilterDelegate = new GrizzlyAddressDelegateFilter<>(); httpServerFilterDelegate = new GrizzlyAddressDelegateFilter<>(); FilterChainBuilder serverFilterChainBuilder = FilterChainBuilder.stateless(); serverFilterChainBuilder.add(new TransportFilter()); serverFilterChainBuilder.add(sslFilterDelegate); serverFilterChainBuilder.add(httpServerFilterDelegate); serverFilterChainBuilder.add(requestHandlerFilter); // Initialize Transport executorProvider = new WorkManagerSourceExecutorProvider(); TCPNIOTransportBuilder transportBuilder = TCPNIOTransportBuilder.newInstance().setOptimizedForMultiplexing(true) .setIOStrategy(new ExecutorPerServerAddressIOStrategy(executorProvider)); configureServerSocketProperties(transportBuilder, serverSocketProperties); transport = transportBuilder.build(); transport .setNIOChannelDistributor(new RoundRobinConnectionDistributor(transport, selectorCount >= MIN_SELECTORS_FOR_DEDICATED_ACCEPTOR, true)); transport.setSelectorRunnersCount(selectorCount); transport.setWorkerThreadPool(workerPool); transport.setKernelThreadPool(selectorPool); // Set filterchain as a Transport Processor transport.setProcessor(serverFilterChainBuilder.build()); this.idleTimeoutExecutorService = idleTimeoutExecutorService; }
new RoundRobinConnectionDistributor(clientTransport, false, false));
new RoundRobinConnectionDistributor(clientTransport, false, false));
new RoundRobinConnectionDistributor(clientTransport, false, false));