List of usage examples for org.apache.thrift.server TThreadPoolServer TThreadPoolServer
public TThreadPoolServer(Args args)
From source file:org.apache.accumulo.server.util.TServerUtils.java
License:Apache License
public static TServer createThreadPoolServer(TServerTransport transport, TProcessor processor) { TThreadPoolServer.Args options = new TThreadPoolServer.Args(transport); options.protocolFactory(ThriftUtil.protocolFactory()); options.transportFactory(ThriftUtil.transportFactory()); options.processorFactory(new ClientInfoProcessorFactory(processor)); return new TThreadPoolServer(options); }
From source file:org.apache.accumulo.trace.instrument.TracerTest.java
License:Apache License
@Test public void testThrift() throws Exception { TestReceiver tracer = new TestReceiver(); Tracer.getInstance().addReceiver(tracer); ServerSocket socket = new ServerSocket(0); TServerSocket transport = new TServerSocket(socket); transport.listen();//from w w w . ja va 2 s.c om TThreadPoolServer.Args args = new TThreadPoolServer.Args(transport); args.processor(new Processor<Iface>(TraceWrap.service(new Service()))); final TServer tserver = new TThreadPoolServer(args); Thread t = new Thread() { public void run() { tserver.serve(); } }; t.start(); TTransport clientTransport = new TSocket(new Socket("localhost", socket.getLocalPort())); TestService.Iface client = new TestService.Client(new TBinaryProtocol(clientTransport), new TBinaryProtocol(clientTransport)); client = TraceWrap.client(client); assertFalse(client.checkTrace(null, "test")); Span start = Trace.on("start"); assertTrue(client.checkTrace(null, "my test")); start.stop(); assertNotNull(tracer.traces.get(start.traceId())); String traces[] = { "my test", "checkTrace", "client:checkTrace", "start" }; assertTrue(tracer.traces.get(start.traceId()).size() == traces.length); for (int i = 0; i < traces.length; i++) assertEquals(traces[i], tracer.traces.get(start.traceId()).get(i).description); tserver.stop(); t.join(100); }
From source file:org.apache.accumulo.tracer.TracerTest.java
License:Apache License
@Test public void testThrift() throws Exception { TestReceiver tracer = new TestReceiver(); org.apache.htrace.Trace.addReceiver(tracer); ServerSocket socket = new ServerSocket(0); TServerSocket transport = new TServerSocket(socket); transport.listen();/*from w w w . jav a2 s.c om*/ TThreadPoolServer.Args args = new TThreadPoolServer.Args(transport); args.processor(new Processor<Iface>(TraceWrap.service(new Service()))); final TServer tserver = new TThreadPoolServer(args); Thread t = new Thread() { @Override public void run() { tserver.serve(); } }; t.start(); TTransport clientTransport = new TSocket(new Socket("localhost", socket.getLocalPort())); TestService.Iface client = new TestService.Client(new TBinaryProtocol(clientTransport), new TBinaryProtocol(clientTransport)); client = TraceWrap.client(client); assertFalse(client.checkTrace(null, "test")); Span start = Trace.on("start"); assertTrue(client.checkTrace(null, "my test")); start.stop(); assertNotNull(tracer.traces.get(start.traceId())); String traces[] = { "my test", "checkTrace", "client:checkTrace", "start" }; assertTrue(tracer.traces.get(start.traceId()).size() == traces.length); for (int i = 0; i < traces.length; i++) assertEquals(traces[i], tracer.traces.get(start.traceId()).get(i).description); tserver.stop(); t.join(100); }
From source file:org.apache.accumulo.tracer.TraceServer.java
License:Apache License
public TraceServer(ServerConfigurationFactory serverConfiguration, String hostname) throws Exception { this.serverConfiguration = serverConfiguration; log.info("Version " + Constants.VERSION); log.info("Instance " + serverConfiguration.getInstance().getInstanceID()); AccumuloConfiguration conf = serverConfiguration.getConfiguration(); table = conf.get(Property.TRACE_TABLE); connector = ensureTraceTableExists(conf); int port = conf.getPort(Property.TRACE_PORT); final ServerSocket sock = ServerSocketChannel.open().socket(); sock.setReuseAddress(true);//from www . j a v a 2 s . c o m sock.bind(new InetSocketAddress(hostname, port)); final TServerTransport transport = new TServerSocket(sock); TThreadPoolServer.Args options = new TThreadPoolServer.Args(transport); options.processor(new Processor<Iface>(new Receiver())); server = new TThreadPoolServer(options); registerInZooKeeper(sock.getInetAddress().getHostAddress() + ":" + sock.getLocalPort(), conf.get(Property.TRACE_ZK_PATH)); writer = new AtomicReference<>(this.connector.createBatchWriter(table, new BatchWriterConfig().setMaxLatency(BATCH_WRITER_MAX_LATENCY, TimeUnit.SECONDS))); }
From source file:org.apache.airavata.api.server.AiravataAPIServer.java
License:Apache License
public void StartAiravataServer(Airavata.Processor<AiravataServerHandler> mockAiravataServer) throws AiravataSystemException { try {//from ww w . j a va 2 s.c o m AiravataUtils.setExecutionAsServer(); RegistryInitUtil.initializeDB(); final int serverPort = Integer .parseInt(ServerSettings.getSetting(Constants.THRIFT_SERVER_PORT, "8930")); TServerTransport serverTransport = new TServerSocket(serverPort); //server = new TSimpleServer( // new TServer.Args(serverTransport).processor(mockAiravataServer)); server = new TThreadPoolServer( new TThreadPoolServer.Args(serverTransport).processor(mockAiravataServer)); new Thread() { public void run() { server.serve(); RegistryInitUtil.stopDerbyInServerMode(); setStatus(ServerStatus.STOPPED); logger.info("Airavata API Server Stopped."); } }.start(); new Thread() { public void run() { while (!server.isServing()) { try { Thread.sleep(500); } catch (InterruptedException e) { break; } } if (server.isServing()) { setStatus(ServerStatus.STARTED); logger.info("Starting Airavata API Server on Port " + serverPort); logger.info("Listening to Airavata Clients ...."); } } }.start(); } catch (TTransportException e) { logger.error(e.getMessage()); setStatus(ServerStatus.FAILED); RegistryInitUtil.stopDerbyInServerMode(); throw new AiravataSystemException(AiravataErrorType.INTERNAL_ERROR); } }
From source file:org.apache.airavata.api.server.MockAiravataAPIServer.java
License:Apache License
public static void main(String[] args) { try {/*from w ww.ja v a 2 s . c om*/ credentialManagementHandler = new CredentialManagementHandler(); credentialManagementProcessor = new CredentialManagementService.Processor(credentialManagementHandler); gatewayManagementHandler = new GatewayManagementHandler(); gatewayManagementProcessor = new GatewayManagementService.Processor(gatewayManagementHandler); TMultiplexedProcessor airavataServerProcessor = new TMultiplexedProcessor(); airavataServerProcessor.registerProcessor("CredentialManagementService", credentialManagementProcessor); airavataServerProcessor.registerProcessor("GatewayManagementService", gatewayManagementProcessor); TServerTransport serverTransport = new TServerSocket(9190); TServer server = new TThreadPoolServer( new TThreadPoolServer.Args(serverTransport).processor(airavataServerProcessor)); System.out.println("Starting Mock Airavata API server..."); server.serve(); } catch (Exception x) { x.printStackTrace(); } }
From source file:org.apache.airavata.api.server.WorkflowServer.java
License:Apache License
public void StartAiravataServer(Workflow.Processor<Workflow.Iface> appCatalogServerHandler) throws AiravataSystemException { try {/* w w w. j a v a 2 s.c o m*/ AiravataUtils.setExecutionAsServer(); // AppCatalogInitUtil.initializeDB(); final int serverPort = Integer .parseInt(ServerSettings.getSetting(Constants.WORKFLOW_SERVER_PORT, "8931")); final String serverHost = ServerSettings.getSetting(Constants.WORKFLOW_SERVER_HOST, null); TServerTransport serverTransport; if (serverHost == null) { serverTransport = new TServerSocket(serverPort); } else { InetSocketAddress inetSocketAddress = new InetSocketAddress(serverHost, serverPort); serverTransport = new TServerSocket(inetSocketAddress); } server = new TThreadPoolServer( new TThreadPoolServer.Args(serverTransport).processor(appCatalogServerHandler)); new Thread() { public void run() { server.serve(); setStatus(ServerStatus.STOPPED); logger.info("Airavata Workflow Server Stopped."); } }.start(); new Thread() { public void run() { while (!server.isServing()) { try { Thread.sleep(500); } catch (InterruptedException e) { break; } } if (server.isServing()) { setStatus(ServerStatus.STARTED); logger.info("Starting Airavata Workflow Server on Port " + serverPort); logger.info("Listening to Workflow API Clients ...."); } } }.start(); } catch (TTransportException e) { logger.error(e.getMessage()); setStatus(ServerStatus.FAILED); throw new AiravataSystemException(AiravataErrorType.INTERNAL_ERROR); } }
From source file:org.apache.airavata.credential.store.server.CredentialStoreServer.java
License:Apache License
@Override public void start() throws Exception { try {// w w w . j a v a 2s. c o m setStatus(ServerStatus.STARTING); final int serverPort = Integer.parseInt(ServerSettings.getCredentialStoreServerPort()); final String serverHost = ServerSettings.getCredentialStoreServerHost(); CredentialStoreService.Processor processor = new CredentialStoreService.Processor( new CredentialStoreServerHandler()); TServerTransport serverTransport; if (serverHost == null) { serverTransport = new TServerSocket(serverPort); } else { InetSocketAddress inetSocketAddress = new InetSocketAddress(serverHost, serverPort); serverTransport = new TServerSocket(inetSocketAddress); } TThreadPoolServer.Args options = new TThreadPoolServer.Args(serverTransport); options.minWorkerThreads = 30; server = new TThreadPoolServer(options.processor(processor)); new Thread() { public void run() { server.serve(); setStatus(ServerStatus.STOPPED); logger.info("Credential store Server Stopped."); } }.start(); new Thread() { public void run() { while (!server.isServing()) { try { Thread.sleep(500); } catch (InterruptedException e) { break; } } if (server.isServing()) { setStatus(ServerStatus.STARTED); logger.info("Starting Credential store Server on Port " + serverPort); logger.info("Listening to Credential store clients ...."); } } }.start(); } catch (TTransportException e) { setStatus(ServerStatus.FAILED); throw new Exception("Error while starting the credential store service", e); } }
From source file:org.apache.airavata.gfac.server.GfacServer.java
License:Apache License
public void StartGfacServer(GfacService.Processor<GfacServerHandler> gfacServerHandlerProcessor) throws Exception { final int serverPort = Integer.parseInt(ServerSettings.getGFacServerPort()); try {//from www . j a va2 s .c o m final String serverHost = ServerSettings.getGfacServerHost(); InetSocketAddress inetSocketAddress = new InetSocketAddress(serverHost, serverPort); TServerTransport serverTransport = new TServerSocket(inetSocketAddress); server = new TThreadPoolServer( new TThreadPoolServer.Args(serverTransport).processor(gfacServerHandlerProcessor)); new Thread() { public void run() { server.serve(); setStatus(ServerStatus.STARTING); logger.info("Starting Gfac Server ..."); } }.start(); new Thread() { public void run() { while (!server.isServing()) { try { Thread.sleep(500); } catch (InterruptedException e) { break; } } if (server.isServing()) { setStatus(IServer.ServerStatus.STARTED); logger.info("Started Gfac Server on Port " + serverPort + " ..."); } } }.start(); } catch (TTransportException e) { logger.error(e.getMessage()); setStatus(IServer.ServerStatus.FAILED); logger.error("Failed to start Gfac server on port " + serverPort + " ..."); } }
From source file:org.apache.airavata.orchestrator.server.OrchestratorServer.java
License:Apache License
public void StartOrchestratorServer( OrchestratorService.Processor<OrchestratorServerHandler> orchestratorServerHandlerProcessor) throws Exception { try {//www. j a v a 2s. com final int serverPort = Integer .parseInt(ServerSettings.getSetting(Constants.ORCHESTRATOT_SERVER_PORT, "8940")); TServerTransport serverTransport = new TServerSocket(serverPort); //server = new TSimpleServer( // new TServer.Args(serverTransport).processor(orchestratorServerHandlerProcessor)); server = new TThreadPoolServer( new TThreadPoolServer.Args(serverTransport).processor(orchestratorServerHandlerProcessor)); new Thread() { public void run() { server.serve(); setStatus(ServerStatus.STOPPED); logger.info("Orchestrator Server Stopped."); } }.start(); new Thread() { public void run() { while (!server.isServing()) { try { Thread.sleep(500); } catch (InterruptedException e) { break; } } if (server.isServing()) { setStatus(ServerStatus.STARTED); logger.info("Starting Orchestrator Server on Port " + serverPort); logger.info("Listening to Orchestrator Clients ...."); } } }.start(); } catch (TTransportException e) { logger.error(e.getMessage()); setStatus(ServerStatus.FAILED); } }