Example usage for org.apache.thrift.server TNonblockingServer TNonblockingServer

List of usage examples for org.apache.thrift.server TNonblockingServer TNonblockingServer

Introduction

In this page you can find the example usage for org.apache.thrift.server TNonblockingServer TNonblockingServer.

Prototype

public TNonblockingServer(AbstractNonblockingServerArgs args) 

Source Link

Usage

From source file:StubServer.java

License:Apache License

public static void main(String argv[]) {
    try {//from ww  w.j ava 2s . c  o  m
        int port = 9090;
        int numThreads = 32;
        if (argv.length != 1) {
            usage();
        }
        System.out.println(argv[0]);
        StubServer mapkeeper = new StubServer();
        TServer server = null;
        if (argv[0].equals("hsha")) {
            TNonblockingServerTransport trans = new TNonblockingServerSocket(port);
            THsHaServer.Args args = new THsHaServer.Args(trans);
            args.transportFactory(new TFramedTransport.Factory());
            args.protocolFactory(new TBinaryProtocol.Factory());
            args.processor(new MapKeeper.Processor(mapkeeper));
            args.workerThreads(numThreads);
            server = new THsHaServer(args);
        } else if (argv[0].equals("nonblocking")) {
            TNonblockingServerTransport trans = new TNonblockingServerSocket(port);
            TNonblockingServer.Args args = new TNonblockingServer.Args(trans);
            args.transportFactory(new TFramedTransport.Factory());
            args.protocolFactory(new TBinaryProtocol.Factory());
            args.processor(new MapKeeper.Processor(mapkeeper));
            server = new TNonblockingServer(args);
        } else if (argv[0].equals("threadpool")) {
            TServerTransport trans = new TServerSocket(port);
            TThreadPoolServer.Args args = new TThreadPoolServer.Args(trans);
            args.transportFactory(new TFramedTransport.Factory());
            args.protocolFactory(new TBinaryProtocol.Factory());
            args.processor(new MapKeeper.Processor(mapkeeper));
            server = new TThreadPoolServer(args);
        } else if (argv[0].equals("selector")) {
            TNonblockingServerTransport trans = new TNonblockingServerSocket(port);
            TThreadedSelectorServer.Args args = new TThreadedSelectorServer.Args(trans);
            args.transportFactory(new TFramedTransport.Factory());
            args.protocolFactory(new TBinaryProtocol.Factory());
            args.processor(new MapKeeper.Processor(mapkeeper));
            args.selectorThreads(4);
            args.workerThreads(numThreads);
            server = new TThreadedSelectorServer(args);
        } else {
            usage();
        }
        server.serve();
    } catch (Exception x) {
        System.out.println(x.toString() + " " + x.getMessage());
    }
}

From source file:ch.epfl.eagle.daemon.util.TServers.java

License:Apache License

/**
 * Launch a single threaded nonblocking IO server. All requests to this server will be
 * handled in a single thread, so its requests should not contain blocking functions.
 */// w  w w. ja v  a 2s .  c  o  m
public static void launchSingleThreadThriftServer(int port, TProcessor processor) throws IOException {
    LOG.info("Staring async thrift server of type: " + processor.getClass().toString() + " on port " + port);
    TNonblockingServerTransport serverTransport;
    try {
        serverTransport = new TNonblockingServerSocket(port);
    } catch (TTransportException e) {
        throw new IOException(e);
    }
    TNonblockingServer.Args serverArgs = new TNonblockingServer.Args(serverTransport);
    serverArgs.processor(processor);
    TServer server = new TNonblockingServer(serverArgs);
    new Thread(new TServerRunnable(server)).start();
}

From source file:ch.usi.da.paxos.thrift.ThriftLearner.java

License:Open Source License

@Override
public void run() {
    try {// www .ja v a  2 s.  c  o m
        TNonblockingServerTransport serverTransport = new TNonblockingServerSocket(port);
        PaxosLearnerService.Processor<Iface> processor = new Processor<Iface>(
                new PaxosLearnerServiceImpl(this.learner));
        TServer server = new TNonblockingServer(
                new TNonblockingServer.Args(serverTransport).processor(processor));
        logger.info("Starting thrift learner server on port " + port);
        server.serve();
    } catch (TTransportException e) {
        logger.error(e);
    }
}

From source file:ch.usi.da.paxos.thrift.ThriftProposer.java

License:Open Source License

@Override
public void run() {
    try {//from w ww. ja v a  2 s  .  c  o m
        TNonblockingServerTransport serverTransport = new TNonblockingServerSocket(port);
        PaxosProposerService.Processor<Iface> processor = new Processor<Iface>(
                new PaxosProposerServiceImpl(proposer));
        TServer server = new TNonblockingServer(
                new TNonblockingServer.Args(serverTransport).processor(processor));
        logger.info("Starting thrift proposer server on port " + port);
        server.serve();
    } catch (TTransportException e) {
        logger.error(e);
    }
}

From source file:com.bendb.thrifty.testing.TestServer.java

License:Apache License

private TServer startNonblockingServer(TProcessor processor, TProtocolFactory protocolFactory) {
    TNonblockingServerTransport nonblockingTransport = (TNonblockingServerTransport) serverTransport;
    TNonblockingServer.Args args = new TNonblockingServer.Args(nonblockingTransport).processor(processor)
            .protocolFactory(protocolFactory);

    return new TNonblockingServer(args);
}

From source file:com.ning.metrics.collector.endpoint.servers.ScribeServer.java

License:Apache License

/**
 * Start the terminal Scribe server//from  w ww  .j  a v a2  s .  c  o m
 *
 * @throws TTransportException if the TNonblockingServerSocket cannot be instantiated
 */
private void start() throws TTransportException {
    final TNonblockingServerTransport socket = new TNonblockingServerSocket(config.getScribePort());
    final TProcessor processor = new Processor(eventRequestHandler);

    server = new TNonblockingServer(new TNonblockingServer.Args(socket).processor(processor)
            .protocolFactory(new TBinaryProtocol.Factory()));
    log.info(String.format("Starting terminal Scribe server on port %d", config.getScribePort()));
    server.serve();
}

From source file:com.pat.filesystem.server.FileSystemServer.java

public static void run(FileSystemService.Processor<FileSystemHandler> processor) {
    initialize();/*from w  ww .ja  va  2 s . c  om*/

    try {
        TNonblockingServerTransport serverTransport = new TNonblockingServerSocket(serverPort);
        TServer server = new TNonblockingServer(
                new TNonblockingServer.Args(serverTransport).processor(processor));
        System.out.println("Server is running on port " + serverPort + "...");
        server.serve();
    } catch (TTransportException e) {
    }
}

From source file:edu.jhu.hlt.concrete.server.ConcreteServer.java

License:Open Source License

/**
 *
 *//*from ww w.  ja va  2  s  . c o m*/
public ConcreteServer(Annotator.Iface impl, int port) throws ServerException {
    try {
        this.serverXport = new TNonblockingServerSocket(port);
        // TODO: eval HaHs server?
        final TNonblockingServer.Args args = new TNonblockingServer.Args(this.serverXport);
        args.protocolFactory(new TCompactProtocol.Factory());
        // TODO: eval FastFramedTransport?
        final TFramedTransport.Factory transFactory = new TFramedTransport.Factory(Integer.MAX_VALUE);
        args.transportFactory(transFactory);
        // legitimately do not know type bound here - guessing Iface
        Annotator.Processor<Iface> proc = new Annotator.Processor<>(impl);
        args.processorFactory(new TProcessorFactory(proc));
        args.maxReadBufferBytes = Long.MAX_VALUE;

        this.args = args;
        // final TNonblockingServer server = new TNonblockingServer(args);
        this.server = new TNonblockingServer(this.args);
    } catch (TTransportException e) {
        throw new ServerException(e);
    }
}

From source file:io.opentracing.thrift.TracingTest.java

License:Apache License

private void startAsyncServer() throws Exception {
    CustomHandler customHandler = new CustomHandler();
    final TProcessor customProcessor = new CustomService.Processor<CustomService.Iface>(customHandler);
    TNonblockingServerSocket tnbSocketTransport = new TNonblockingServerSocket(port, 30000);
    TNonblockingServer.Args tnbArgs = new TNonblockingServer.Args(tnbSocketTransport);
    tnbArgs.processor(new SpanProcessor(customProcessor));

    server = new TNonblockingServer(tnbArgs);
    new Thread(new Runnable() {
        @Override/*from  w  w  w  . j  a va 2  s  .c  om*/
        public void run() {
            server.serve();
        }
    }).start();
}

From source file:middleware.library.core.ServerCore.java

/**
 * @param args the command line arguments
 *//*from ww  w.j a va  2s . c om*/
public static void main(String[] args) throws TTransportException {
    // TODO code application logic here
    int port = Registry.getInt("thrift.connection.server.port", 9090);
    PropertyConfigurator.configure("../properties/log4j.middleware.properties");

    TNonblockingServerTransport serverTransport = new TNonblockingServerSocket(9090);
    middleware.library.thrift.ChatProject.Processor processor = new middleware.library.thrift.ChatProject.Processor(
            new ConnectionChatHandler());

    TServer server = new TNonblockingServer(new TNonblockingServer.Args(serverTransport).processor(processor));

    List<String> listUserOnline = new ArrayList<String>();
    MyMemcached.getInstance().set("userOnline", 0, listUserOnline);

    System.out.println("Starting server on port " + port + " ...");
    createUser();

    server.serve();
}