소켓 프로그래밍을 기반으로 Java 클라이언트 서버 응용 프로그램을 개발했습니다. 현재 여러 클라이언트가 동시에 서버에 접속하고 있는지 테스트하고 있습니다. 내 서버에서 나는 이클립스, 크롬, mysqld, memcached, mysql 관리자, mysql 쿼리, my java 서버 및 동시 클라이언트 5를 실행 중이다. 요청 및 응답의 페이로드는 최대 5KB가 넘지 않는다. 클라이언트 당 약 5 개의 요청이 순차적으로 발생합니다. 1 클라이언트를 실행할 때 문제가 없습니다. 5를 동시에 실행하면 서버가 응답하지 않는 것 같습니다.Java 클라이언트 서버 프로그래밍, cpu maxing out
지금 제 질문은. 나는 바닐라 unbuntu 32 비트를 설치했습니다. 네트워킹 도움말을 미세 조정할 수 있습니까? 아니면 아마도 내 애플 리케이션 자체에 문제가 있다고 생각하십니까?
4 기가비트 램, 우분투 32 비트 듀얼 코어 프로세서를 실행하고 있습니다.
나는 좋은 블로그/링크를 찾고 있습니다.
편집 깊은 조사에서 내 서버가 요청을받지 못했다는 것을 깨달았습니다. 하지만 제 의뢰인이 보내고 있습니다. 어쨌든 서버가 요청을 받았는지 확인한 다음 드롭하기로 결정했습니다.
예, 그렇게 생각했습니다. 나는 wireshark 냄새 맡고, 나의 요청이 서버에 도착한다는 것을 알아 차렸다. Ack가 있습니다. 하지만 어떤 이유로 서버 측 소켓/인스 트림이 요청 객체를 선택하지 않습니다. 예, 스레드 세이프합니다. 나는 올바른 장소에 잠겨 있습니다. 나는 다른 요청/응답을 보내고 있습니다. 이 요청은 serversocket.instream이 실행되지 않도록 요청합니다. 힌트/생각이 도움이 될 것입니다. 계속 유지하십시오. 감사. – Siddharth
이 요청은 일관되게 통과하지 않습니다. 동일한 요청이 시간의 50 %를 전달합니다. – Siddharth
샘플 서버/클라이언트 Java 코드를 다운로드하고 작동하는지 테스트 해 보시지 않겠습니까? 작동이 멈출 때까지 테스트하면서 기능별로 기능을 추가하십시오. –