*Arhivat* = Gestionarea conexiunilor la server web = Problemă: Am o aplicație JavaFx care solicită un db prin http. Întâmpin intermitent probleme în care toate conexiunile disponibile la serverul web (191) sunt epuizate, provocând o blocare Încerc să aflu de ce se întâmplă acest lucru, deoarece se pare că conexiunile reale ar trebui să fie mult mai mici. Există maximum 40 de instanțe ale aplicației care rulează simultan Iată o metodă tipică de utilizare (Kotlin): fun myHTTPFunction(utilizator: String, telefon: String, customCID: Boolean, cID: String) { val httpClient = HttpClients.createDefault() val răspuns: CloseableHttpResponse try { val useCID = when(customCID) { true ->"&group_alias=$cID"else ->""} val httpPost = HttpPost(ADRESA PHP) răspuns = httpClient.execute(httpPost) EntityUtils.consume(response.entity) încercați {response.closecatch (e: Excepție) {exception.showStackTrace(e )} încercați {httpClient.closecatch (e: Excepție) {exception.showStackTrace(e)} } catch(e: Excepție) { exception.showStackTrace(e) } } Notă: Inițial, doar o singură instanță a HttpClients a fost creată și reutilizată pentru apelurile de metodă. Cu toate acestea, la verificarea conexiunilor pe serverul web, această metodă are ca rezultat aproximativ 30% mai multe conexiuni per client activ. (Până la 20, în ciuda unui singur apel de metodă „createDefault.) Utilizarea unei metode precum codul atașat are ca rezultat 1-4 conexiuni per client, dar acest lucru poate cauza în continuare probleme, în special atunci când sunt activați peste 20 de clienți simultan. Majoritatea conexiunilor se termină automat după câteva secunde, dar dacă este atins limita de conectare 191, conexiunile nu se vor mai închide și serverul se blochează După înțelegerea mea, utilizarea recomandată a Apache httpclient este utilizarea unei singure instanțe client, dar acest lucru nu pare să ducă la o singură conexiune la server. Gânduri sau ceva ce mi-a omis (probabil)? nici un comentariu încă Fii primul care împărtășește ceea ce crezi! == Despre comunitate == Membrii Online