*보관됨* = 웹 서버 연결 관리 = 문제: http를 통해 db를 요청하는 JavaFx 응용 프로그램이 있습니다. 간헐적으로 웹 서버(191)에 대한 사용 가능한 모든 연결이 모두 사용되어 충돌이 발생하는 문제가 발생합니다. 실제 연결이 훨씬 낮아야 할 것 같아서 왜 이런 일이 발생하는지 알아 내려고 노력하고 있습니다. 한 번에 최대 40개의 응용 프로그램 인스턴스가 실행됩니다. 다음은 일반적인 사용 방법(Kotlin)입니다. fun myHTTPFunction(user: String, phone: String, customCID: Boolean, cID: String) { val httpClient = HttpClients.createDefault() val response: CloseableHttpResponse try { val useCID = when(customCID) { true ->"&group_alias=$cID"else ->""} val httpPost = HttpPost(PHP ADDRESS) response = httpClient.execute(httpPost) EntityUtils.consume(response.entity) try {response.closecatch (e: 예외) {exception.showStackTrace(e )} 시도 {httpClient.closecatch (e: 예외) {exception.showStackTrace(e)} } catch(e: 예외) { exception.showStackTrace(e) } } 참고: 원래 HttpClients의 단일 인스턴스만 생성되어 메서드 호출에 재사용되었습니다. 그러나 웹 서버에서 연결을 확인할 때 이 방법을 사용하면 활성 클라이언트당 약 30% 더 많은 연결이 발생합니다. (단일 'createDefault 메서드 호출에도 불구하고 최대 20개입니다.) 첨부된 코드와 같은 방법을 사용하면 클라이언트당 1-4개의 연결이 발생하지만 특히 20개 이상의 클라이언트가 한 번에 활성화되는 경우 여전히 문제가 발생할 수 있습니다. 대부분의 연결은 몇 초 후에 자체 종료되지만 191 연결 제한에 도달하면 연결이 더 이상 닫히지 않고 서버가 충돌합니다. 내 이해로는 apache httpclient의 권장 사용법은 단일 클라이언트 인스턴스를 활용하는 것이지만 이것이 서버에 대한 단일 연결로 이어지지는 않는 것 같습니다. 내가 (아마도) 놓친 생각이나 무언가? 아직 코멘트가 없습니다 당신이 생각하는 것을 가장 먼저 공유하십시오! == 커뮤니티 소개 == 회원 온라인