* مؤرشف * = إدارة اتصالات خادم الويب = مشكلة: لدي تطبيق JavaFx يتطلب db من خلال http. أواجه مشكلات بشكل متقطع حيث يتم استخدام جميع الاتصالات المتاحة بخادم الويب (191) ، مما يتسبب في حدوث عطل أحاول معرفة سبب حدوث ذلك ، حيث يبدو أن الاتصالات الفعلية يجب أن تكون أقل بكثير. يوجد 40 مثيلاً كحد أقصى للتطبيق قيد التشغيل في المرة الواحدة فيما يلي طريقة استخدام نموذجية (Kotlin): متعة myHTTPFunction (المستخدم: 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) جرب {response.closecatch (e: Exception) { )} جرب {httpClient.closecatch (e: Exception) {except.showStackTrace (e)}} catch (e: Exception) {except.showStackTrace (e)}} ملاحظة: في الأصل ، تم إنشاء مثيل واحد فقط من HttpClients ، وأعيد استخدامه لاستدعاءات الطريقة. ومع ذلك ، عند التحقق من الاتصالات على خادم الويب ، ينتج عن هذه الطريقة حوالي 30٪ اتصالات أكثر لكل عميل نشط. (حتى 20 بالرغم من استدعاء طريقة createDefault واحد فقط.) ينتج عن استخدام طريقة مثل الكود المرفق 1-4 اتصالات لكل عميل ، ولكن لا يزال من الممكن أن يتسبب ذلك في حدوث مشكلات ، خاصة عند تنشيط أكثر من 20 عميلًا في وقت واحد. تنتهي معظم الاتصالات ذاتيًا بعد بضع ثوانٍ ، ولكن إذا تم الوصول إلى الحد الأقصى للاتصال 191 ، فلن تغلق الاتصالات مرة أخرى وسيتعطل الخادم حسب فهمي ، فإن الاستخدام الموصى به لـ apache httpclient هو استخدام مثيل عميل واحد ، ولكن لا يبدو أن هذا يؤدي إلى اتصال واحد بالخادم. أفكار أو شيء فاتني (ربما)؟ لا تعليقات حتى الآن كن أول من يشارك رأيك! == حول المجتمع == أعضاء متصل