List of usage examples for org.apache.thrift.server TThreadPoolServer TThreadPoolServer
public TThreadPoolServer(Args args)
From source file:com.wmz7year.thrift.pool.BasicAbstractTest.java
License:Apache License
protected ThriftServerInfo startServer() throws Throwable { // ???//from ww w.ja v a 2s . c om final int port = choseListenPort(); ThriftServerInfo serverInfo = new ThriftServerInfo(LOACLHOST, port); final AtomicReference<Throwable> ex = new AtomicReference<Throwable>(); Thread runner = new Thread("thrift-server-starter") { @Override public void run() { try { TServerTransport serverTransport = new TServerSocket(port); Factory proFactory = new TBinaryProtocol.Factory(); Processor<Iface> processor = new Example.Processor<Example.Iface>(new Example.Iface() { @Override public void pong() throws TException { logger.info("pong"); } @Override public void ping() throws TException { logger.info("ping"); } }); Args thriftArgs = new Args(serverTransport); thriftArgs.processor(processor); thriftArgs.protocolFactory(proFactory); TServer tserver = new TThreadPoolServer(thriftArgs); servers.add(tserver); logger.info("???" + port); tserver.serve(); } catch (TTransportException e) { logger.error("thrift??", e); ex.set(e); } } }; runner.start(); Throwable throwable = ex.get(); if (throwable != null) { throw throwable; } // ?? Thread.sleep(1000); return serverInfo; }
From source file:com.wmz7year.thrift.pool.BasicAbstractTest.java
License:Apache License
protected ThriftServerInfo startMulitServiceServer() throws Throwable { // ???//from ww w . j ava2 s. c o m final int port = choseListenPort(); ThriftServerInfo serverInfo = new ThriftServerInfo(LOACLHOST, port); final AtomicReference<Throwable> ex = new AtomicReference<Throwable>(); // TODO Thread runner = new Thread("thrift-server-starter") { @Override public void run() { try { TMultiplexedProcessor processor = new TMultiplexedProcessor(); TServerTransport serverTransport = new TServerSocket(port); Factory proFactory = new TBinaryProtocol.Factory(); processor.registerProcessor("example", new Example.Processor<Example.Iface>(new Example.Iface() { @Override public void pong() throws TException { logger.info("example pong"); } @Override public void ping() throws TException { logger.info("example ping"); } })); processor.registerProcessor("other", new Other.Processor<Other.Iface>(new Other.Iface() { @Override public void pong() throws TException { logger.info("other pong"); } @Override public void ping() throws TException { logger.info("other ping"); } })); Args thriftArgs = new Args(serverTransport); thriftArgs.processor(processor); thriftArgs.protocolFactory(proFactory); TServer tserver = new TThreadPoolServer(thriftArgs); servers.add(tserver); logger.info("???" + port); tserver.serve(); } catch (TTransportException e) { logger.error("thrift??", e); ex.set(e); } } }; runner.start(); Throwable throwable = ex.get(); if (throwable != null) { throw throwable; } // ?? Thread.sleep(1000); return serverInfo; }
From source file:com.wmz7year.thrift.pool.example.ExampleServer.java
License:Apache License
public static void main(String[] args) { try {/* w w w . j av a 2s . c o m*/ int port = 9119; TServerTransport serverTransport = new TServerSocket(port); Factory proFactory = new TBinaryProtocol.Factory(); Processor<Iface> processor = new Example.Processor<Example.Iface>(new Example.Iface() { @Override public void pong() throws TException { System.out.println("pong"); } @Override public void ping() throws TException { System.out.println("ping"); } }); Args thriftArgs = new Args(serverTransport); thriftArgs.processor(processor); thriftArgs.protocolFactory(proFactory); TServer tserver = new TThreadPoolServer(thriftArgs); System.out.println("??:" + port); tserver.serve(); } catch (TTransportException e) { e.printStackTrace(); } }
From source file:de.pgrp.core.ThriftServerWorker.java
License:Open Source License
/** * The run() method//from ww w. j a v a2 s . c o m */ @SuppressWarnings({ "rawtypes", "unchecked" }) @Override public void run() { this.setName("Thrift-Server Thread"); try { this.serverTransport = new TServerSocket(Globals.p2pPort); this.processor = new DataTransfer.Processor(new ThriftDataHandler()); //Singlethreaded: //this.server = new TSimpleServer(new TServer.Args(serverTransport).processor(processor)); //Multithreaded: TThreadPoolServer.Args tpsa = new TThreadPoolServer.Args(serverTransport).processor(processor); tpsa.minWorkerThreads(1); tpsa.maxWorkerThreads(20); this.server = new TThreadPoolServer(tpsa); Globals.log.addMsg("Starting thrift handler on port " + Globals.p2pPort); this.server.serve(); } catch (TTransportException e) { Globals.log.addMsg("Thrift server error: " + e); } Globals.log.addMsg("Thrift-Server-Thread interrupted. Closing...", 4); }
From source file:ejemplo1.Ejemplo1.java
/** * @param args the command line arguments *//*w w w . ja v a 2s.c o m*/ public static void main(String[] args) { try { // TODO code application logic here TServerSocket serverTransport = new TServerSocket(9191); pruebaSuma.Processor processor = new pruebaSuma.Processor(new pruebaOperacion()); TServer server = new TThreadPoolServer( new TThreadPoolServer.Args(serverTransport).processor(processor)); System.out.println("iniciando servidor en el puerto 9191"); server.serve(); } catch (TTransportException ex) { ex.printStackTrace(); } }
From source file:eu.asterics.mw.are.asapi.Activator.java
License:GNU General Public License
public Activator() { try {/*from w w w. jav a 2 s . c o m*/ logger = AstericsErrorHandling.instance.getLogger(); AsapiServerHandler handler = new AsapiServerHandler(); AsapiServer.Processor processor = new AsapiServer.Processor(handler); TServerTransport serverTransport = new TServerSocket(9090); // socket timeout after 3000ms => TServerSocket(9090, 3000) // simple server for thrift 0.5.0 //server = new TSimpleServer(processor, serverTransport); // simple server for thrift 0.6.1 //server = new TSimpleServer(new TServer.Args(serverTransport).processor(processor)); // multithreaded server for thrift 0.5.0 //server = new TThreadPoolServer(processor, serverTransport); // multithreaded server for thrift >= 0.6.1 server = new TThreadPoolServer(new TThreadPoolServer.Args(serverTransport).processor(processor)); // TThreadPoolServer.Args serverArgs = new TThreadPoolServer.Args(serverTransport); // serverArgs.maxWorkerThreads(4); // server = new TThreadPoolServer(serverArgs.processor(processor).protocolFactory(new TBinaryProtocol.Factory())); } catch (Exception e) { logger.warning(this.getClass().getName() + "." + "Activator: -> \n" + e.getMessage()); } }
From source file:ezbake.frack.submitter.SubmitterService.java
License:Apache License
private void run() throws TTransportException { Submitter.Processor processor = new Submitter.Processor(this); TServerTransport serverTransport = new TServerSocket(8500); TServer server = new TThreadPoolServer(new TThreadPoolServer.Args(serverTransport).processor(processor)); System.out.println("Starting the frack-submitter service"); server.serve();//from ww w .ja va2s. c o m }
From source file:ezbake.IntentQuery.Sample.MongoDatasource.Server.MongoExternalDataSourceServer.java
License:Apache License
public static void simple(ExternalDataSourceService.Processor processor) { try {//w ww.j ava2 s .c om TServerTransport serverTransport = new TServerSocket(SIMPLE_PORT); //TServer server = new TSimpleServer(new Args(serverTransport).processor(processor)); // Use this for a multithreaded server TServer server = new TThreadPoolServer( new TThreadPoolServer.Args(serverTransport).processor(processor)); System.out.println("Starting the simple server..."); server.serve(); } catch (Exception e) { e.printStackTrace(); } }
From source file:ezbake.IntentQuery.Sample.MongoDatasource.Server.MongoExternalDataSourceServer.java
License:Apache License
public static void secure(ExternalDataSourceService.Processor processor) { try {//from w w w. j ava2 s . co m /* * Use TSSLTransportParameters to setup the required SSL parameters. In this example * we are setting the keystore and the keystore password. Other things like algorithms, * cipher suites, client auth etc can be set. */ TSSLTransportParameters params = new TSSLTransportParameters(); // The Keystore contains the private key params.setKeyStore("/home/training/ezBake/thrift-0.9.1/lib/java/test/.keystore", "thrift", null, null); /* * Use any of the TSSLTransportFactory to get a server transport with the appropriate * SSL configuration. You can use the default settings if properties are set in the command line. * Ex: -Djavax.net.ssl.keyStore=.keystore and -Djavax.net.ssl.keyStorePassword=thrift * * Note: You need not explicitly call open(). The underlying server socket is bound on return * from the factory class. */ TServerTransport serverTransport = TSSLTransportFactory.getServerSocket(SECURE_PORT, 0, null, params); //TServer server = new TSimpleServer(new Args(serverTransport).processor(processor)); // Use this for a multi threaded server TServer server = new TThreadPoolServer( new TThreadPoolServer.Args(serverTransport).processor(processor)); System.out.println("Starting the secure server..."); server.serve(); } catch (Exception e) { e.printStackTrace(); } }
From source file:ezbake.security.service.EzSecurityLauncher.java
License:Apache License
/** * Parse command line arguments and start the server * * @throws Exception/*from w w w.j av a 2 s . c om*/ */ public void run() throws Exception { checkEzConfig(); // get the port if (this.port == 0) { this.port = findFreePort(); } // Setup the EzConfiguration Properties config = new EzConfiguration().getProperties(); if (!config.containsKey(EzBakePropertyConstants.EZBAKE_SECURITY_ID)) { config.setProperty(EzBakePropertyConstants.EZBAKE_SECURITY_ID, this.id); } if (!config.containsKey(EzBakePropertyConstants.EZBAKE_CERTIFICATES_DIRECTORY)) { config.setProperty(EzBakePropertyConstants.EZBAKE_CERTIFICATES_DIRECTORY, new File(this.config, "ssl").getPath()); } if (!config.containsKey(EzBakePropertyConstants.EZBAKE_SECURITY_SERVICE_MOCK_SERVER)) { config.setProperty(EzBakePropertyConstants.EZBAKE_SECURITY_SERVICE_MOCK_SERVER, String.valueOf(this.mock)); } EzBakeBaseThriftService runner = new EzSecurityHandler(); runner.setConfigurationProperties(config); TProcessor processor = runner.getThriftProcessor(); TServerSocket socket = ThriftUtils.getSslServerSocket(this.port, config); server = new TThreadPoolServer( new TThreadPoolServer.Args(socket).processor(processor).minWorkerThreads(1000)); // Make the service discoverable if (new ZookeeperConfigurationHelper(config).getZookeeperConnectionString() == null) { throw new RuntimeException("No zookeeper is available for service discovery!"); } // register with zookeeper client = new ServiceDiscoveryClient( new ZookeeperConfigurationHelper(config).getZookeeperConnectionString()); client.registerEndpoint(ezsecurityConstants.SERVICE_NAME, getHostName()); // Add shutdown hook to unregister unregisterOnShutdown(); log.info("Starting EzBakeSecurity server: port({})", socket.getServerSocket().getLocalPort()); server.serve(); }