*Arşivlendi* = Web sunucusu bağlantılarını yönetme = Sorun: Http aracılığıyla bir db isteyen bir JavaFx uygulamasına sahibim. Aralıklı olarak, web sunucusuna (191) yönelik mevcut tüm bağlantıların kullanıldığı ve çökmeye neden olan sorunlarla karşılaşıyorum Gerçek bağlantıların çok daha düşük olması gerektiği gibi göründüğü için bunun neden olduğunu anlamaya çalışıyorum. Bir seferde çalışan uygulamanın en fazla 40 örneği vardır İşte tipik bir kullanım yöntemi (Kotlin): fun myHTTPFunction(user: String, phone: String, customCID: Boolean, cID: String) { val httpClient = HttpClients.createDefault() val yanıt: CloseableHttpResponse try { val useCID = when(customCID) { true ->" &group_alias=$cID"else ->""} val httpPost = HttpPost(PHP ADRESİ) yanıtı = httpClient.execute(httpPost) EntityUtils.consume(response.entity) deneyin {response.closecatch (e: İstisna) {exception.showStackTrace(e) )} deneyin {httpClient.closecatch (e: İstisna) {exception.showStackTrace(e)} } catch(e: İstisna) { istisna.showStackTrace(e) } } Not: Başlangıçta yalnızca tek bir HttpClients örneği oluşturuldu ve yöntem çağrıları için yeniden kullanıldı. Ancak, web sunucusundaki bağlantıları kontrol ederken, bu yöntem aktif istemci başına yaklaşık %30 daha fazla bağlantıyla sonuçlanır. (Yalnızca tek bir 'createDefault yöntem çağrısına rağmen 20'ye kadar.) Ekteki kod gibi bir yöntemin kullanılması, müşteri başına 1-4 bağlantıyla sonuçlanır, ancak bu, özellikle aynı anda 20'den fazla istemci etkinleştirildiğinde sorunlara neden olabilir. Çoğu bağlantı birkaç saniye sonra kendi kendine sonlandırılır, ancak 191 bağlantı sınırına ulaşılırsa bağlantılar artık kapanmaz ve sunucu çöker Anladığım kadarıyla, Apache httpclient'in önerilen kullanımı tek bir istemci örneği kullanmaktır, ancak bu, sunucuya tek bir bağlantıyla sonuçlanmıyor gibi görünüyor. Düşünceler veya (muhtemelen) kaçırdığım bir şey? henüz yorum yok Ne düşündüğünü ilk paylaşan sen ol! == Topluluk Hakkında == Üyeler Çevrimiçi