Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public Server build2() {
- final ThreadPoolConfig selectorPoolConfig = ThreadPoolConfig.defaultConfig();
- selectorPoolConfig.setMaxPoolSize(2);
- selectorPoolConfig.setCorePoolSize(2);
- selectorPoolConfig.setPoolName("selector");
- final ThreadPoolConfig workerPoolConfig = ThreadPoolConfig.defaultConfig();
- workerPoolConfig.setMaxPoolSize(6);
- workerPoolConfig.setCorePoolSize(6);
- workerPoolConfig.setPoolName("worker");
- final SSLContext sslContext = super.buildSSLContext();
- final SSLEngineConfigurator sslServerConfig = new SSLEngineConfigurator(sslContext, false, true, true);
- sslServerConfig.setEnabledCipherSuites(new String[]{"SSL_DH_anon_WITH_3DES_EDE_CBC_SHA", "SSL_RSA_WITH_3DES_EDE_CBC_SHA"});
- sslServerConfig.setCipherConfigured(true);
- final SSLEngineConfigurator sslClientConfig = sslServerConfig.copy().setClientMode(true);
- final FilterChainBuilder filterChainBuilder = FilterChainBuilder.stateless();
- filterChainBuilder.add(new TransportFilter());
- filterChainBuilder.add(new SSLFilter(sslServerConfig, sslClientConfig, true));
- filterChainBuilder.add(new NetStringFilter());
- filterChainBuilder.add(new HandshakeFilter());
- filterChainBuilder.add(new CommandFilter());
- filterChainBuilder.add(new DelayFilter(simulatedDelayMillis));
- final TCPNIOTransport transport = TCPNIOTransportBuilder.newInstance()
- .setIOStrategy(WorkerThreadIOStrategy.getInstance())
- .setMemoryManager(MemoryManager.DEFAULT_MEMORY_MANAGER)
- .setProcessor(filterChainBuilder.build())
- .setReadBufferSize(32 * 1024)
- .setWriteBufferSize(32 * 1024 * 2)
- .setKeepAlive(true)
- .setLinger(TCPNIOTransport.DEFAULT_LINGER)
- .setTcpNoDelay(true)
- .setConnectionTimeout(NIOTransport.DEFAULT_CONNECTION_TIMEOUT)
- .setClientSocketSoTimeout(NIOTransport.DEFAULT_CLIENT_SOCKET_SO_TIMEOUT)
- .setSelectorThreadPoolConfig(selectorPoolConfig)
- .setWorkerThreadPoolConfig(workerPoolConfig)
- .build();
- try {
- transport.bind(listenPort);
- } catch (IOException e) {
- throw new ServerException("Failed to bind to port [" + listenPort + "].", e);
- }
- return new Server(transport, shutdownGracePeriodMillis, listenPort);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement