एक worker वापरण्यायोग्य प्रॉक्सी शोधतो. तुम्ही त्याचा पत्ता परत करता, इतर futures वर cancel कॉल करता, आणि नेटवर्क क्रियाकलाप थांबेल अशी अपेक्षा करता. कदाचित थांबणार नाही.

Future त्याच्या callable सुरू होण्यापूर्वी रद्द केला जाऊ शकतो. जेव्हा थ्रेड आधीच विनंती कार्यान्वित करत असतो, तेव्हा त्याचा Future रद्द केल्याने ते सॉकेट ऑपरेशन व्यत्ययित होत नाही. worker ला स्वतःचे मर्यादित नेटवर्क ऑपरेशन आणि स्वच्छता मार्ग आवश्यक आहे.

executor चे आयुष्यही महत्त्वाचे आहे. ThreadPoolExecutor संदर्भ सोडणे त्याचे काम पूर्ण होण्याची प्रतीक्षा करते. एक जलद निकाल शोधून नंतर अनेक संथ workers ची प्रतीक्षा केल्यास कॉलरचा एकूण विलंब विजेत्याने नोंदवलेल्या विलंबापेक्षा पूर्णपणे वेगळा दिसू शकतो.

शर्यत सुरू करण्यापूर्वी मर्यादित करा

  • अमर्यादित सार्वजनिक यादी सबमिट करण्याऐवजी एकाच वेळी होणाऱ्या तपासण्यांची संख्या मर्यादित करा. विनामूल्य प्रॉक्सी यादी तपासकाच्या इनपुटसाठी उमेदवार देते, प्रत्येक एंडपॉइंटचे प्रोटोकॉल worker साठी ठेवले जाते.
  • प्रत्येक विनंतीला योग्य कनेक्शन आणि वाचन धोरण द्या.
  • कॉलरला एकूण निर्णय बजेट द्या.
  • निर्णयानंतर जगणाऱ्या workers चे निकाल कोण रिकामे करतो किंवा बंद करतो ते ठरवा.

Future साठी कमी प्रतीक्षा करणे म्हणजे त्याची अंतर्निहित विनंती लहान करणे नव्हे. त्याचप्रमाणे, निकाल सोडून दिल्याने प्रत्येक नेटवर्क संसाधन त्वरित मुक्त होत नाही.

पहिला यशस्वी निकालही फक्त पहिली यशस्वी तपासणी आहे. तो शेड्यूलिंग, कॅशे केलेले कनेक्शन आणि विशिष्ट तपासणी गंतव्य यांवर अवलंबून असू शकतो. एंडपॉइंट सार्वत्रिकपणे सर्वात वेगवान आहे किंवा खरे कार्य यशस्वी होईल हे तो सिद्ध करत नाही.

अनेकदा अलीकडील निरीक्षणांसह छोटा राखीव तलाव प्रत्येक डाउनलोडपूर्वी संपूर्ण यादीशी शर्यत करण्यापेक्षा सोपा असतो. नोंद अद्ययावत करण्यासाठी खऱ्या ऑपरेशनचा निकाल वापरा, अयशस्वीतेसाठी नियंत्रित पुनर्प्राप्ती धोरणसह. प्रीफ्लाइटने सवयीने प्रत्येक कार्य दुप्पट करण्याऐवजी त्याची किंमत कमावली पाहिजे.

संबंधित लेख