TSimpleServer的工作模式只有一個(gè)工作線程,循環(huán)監(jiān)聽新請(qǐng)求的到來并完成對(duì)請(qǐng)求的處理,只用于測(cè)試 TSimpleServer的工作模式采用最簡(jiǎn)單的阻塞IO,實(shí)現(xiàn)方法簡(jiǎn)潔明了,便于理解,但是一次只能接收和處理一個(gè)socket連接,效率比較低,主要用于演示Thrift的工作過程,在實(shí)際開發(fā)過程中很少用到它。 服務(wù)端代碼: private static void simpleServer() throws TTransportException {
TServerSocket serverSocket=new TServerSocket(8888);
ISayHello.Iface sayHelloService = new SayHelloImpl();
Processor<Iface> processor = new ISayHello.Processor<Iface>(sayHelloService);
TServer.Args serverParams=new TServer.Args(serverSocket);
serverParams.protocolFactory(new TBinaryProtocol.Factory());
serverParams.processor(processor);
TServer server=new TSimpleServer(serverParams); //簡(jiǎn)單的單線程服務(wù)模型,常用于測(cè)試
server.serve();
}
客戶端代碼:
|
|