我有一个用Java实现的Thrift服务器,如下所示:
TNonblockingServerTransport serverTransport = new TNonblockingServerSocket(getThriftPort(), 100);
TServer tserver = new TNonblockingServer(new TNonblockingServer.Args(serverTransport).processor(processor)
.inputProtocolFactory(new TBinaryProtocol.Factory())
.outputProtocolFactory(new TBinaryProtocol.Factory())
.transportFactory(new TFramedTransport.Factory()));
我的客户端在C中实现。此服务器主要用于从磁盘提供字节。在服务器决定随机挂起之前,请求似乎已经回答了一段时间。有关如何进一步调试此问题的任何提示?
在进程停滞后,如果我运行netstat,我会看到如下数据:
tcp 0 0 0.0.0.0:9090 0.0.0.0:* LISTEN 186002/java
tcp 0 0 127.0.0.1:9090 127.0.0.1:51813 ESTABLISHED 186002/java
tcp 0 0 127.0.0.1:51814 127.0.0.1:9090 ESTABLISHED 186210/client
tcp 0 0 127.0.0.1:51813 127.0.0.1:9090 ESTABLISHED 186210/client
tcp 1 0 127.0.0.1:52515 127.0.0.1:9090 CLOSE_WAIT -
tcp 1 0 127.0.0.1:52514 127.0.0.1:9090 CLOSE_WAIT -
tcp 51 0 127.0.0.1:9090 127.0.0.1:51814 ESTABLISHED -
答案 0 :(得分:0)
我将关闭此问题,因为这可能与Thrift无关。如果我以后再提供,我会添加任何细节。