1
응답 :드리프트 자바 TNonBlockingServer 내가 다음과 같이 자바로 구현 된 드리프트 서버가 무작위로
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 -
C 클라이언트의 연결을 다시 사용하거나 매번 새 연결을 만드시겠습니까? 서버가 멈춘 후 - 열려있는 연결을 확인할 수 있습니까? sudo netstat와 같은 것 -anp | * nix – iMysak
에 grep :이 netstat 데이터를 질문에 첨부했습니다. 내 자바 서버는 9090에서 실행 중이다. 이전에는 연결을 다시 사용했지만 부실 연결 문제를 배제하기 위해 매번 연결을 열거 나 닫을 때 사용한다. 그러나 두 경우 모두 서버 중단 문제를 관찰합니다. –