प्रोक्सी B, फेरि प्रोक्सी B, त्यसपछि प्रोक्सी A। तपाईंको लग शङ्कास्पद देखिन्छ, तर अनियमित छनोटकर्तालाई ठ्याक्कै त्यही गर्न अनुमति छ।

हरेक अनुरोधमा एउटै सूचीबाट छनोट गर्दा दोहोरिने कुरालाई अनुमति दिन्छ। दुई समान सम्भावना भएका इन्डपोइन्ट भएमा अर्को स्वतन्त्र छनोटले अघिल्लोसँग मिल्ने दुईमध्ये एक सम्भावना हुन्छ। दोहोरिने क्रम भएको छोटो शृङ्खला छनोटकर्ताले सूची बेवास्ता गरेको प्रमाण होइन।

तपाईंलाई साँच्चै चाहिने व्यवहार छान्नुहोस्

आवश्यकताछनोट नियम
हरेक छनोट स्वतन्त्र छहरेक पटक योग्य सूचीबाट छान्नुहोस्
फेरि सुरु गर्नुअघि हरेक इन्डपोइन्ट एक पटक प्रयोग गर्नुहोस्एउटा प्रतिलिपि मिसाउनुहोस्, त्यो सक्नुहोस्, त्यसपछि अर्को पास सुरु गर्नुहोस्
तत्काल अघिल्लो इन्डपोइन्टबाट बच्नुहोस्छनोट गर्नुअघि त्यो इन्डपोइन्ट हटाउनुहोस्

अन्तिम नीतिका लागि एक इन्डपोइन्ट भएको अवस्थालाई स्पष्ट रूपमा सम्हाल्नुहोस्:

candidates = [endpoint for endpoint in eligible if endpoint != previous]
if not candidates:
    raise RuntimeError("No different eligible proxy is available")
selected = random.choice(candidates)

यो खण्डले random आयात गरिएको र इन्डपोइन्टको सूची पहिले नै प्रमाणित भएको मान्छ। सार्वजनिक पूलले निःशुल्क प्रोक्सी सूचीबाट सुरु गर्न सक्छ जब यसका प्रोटोकलहरू अन्तिम ग्राहकसँग मिल्छन्; यो छनोट नियमले अझै दोहोरिने कुरा नियन्त्रण गर्छ। पर्खने, एकमात्र इन्डपोइन्ट पुनः प्रयोग गर्ने वा रोक्ने भन्ने अनुप्रयोगको नीति हो। फरक अनियमित मानको प्रतीक्षा गर्ने अनन्त लूपले केवल एक फरक विकल्प भएको सूची समाधान गर्न सक्दैन।

समवर्ती डिस्प्याचरमा अघिल्लो इन्डपोइन्ट छान्ने र अभिलेख गर्ने कामलाई पनि समन्वित स्वामित्व चाहिन्छ। अन्यथा दुई कर्मचारीले दुवैले पुरानो मान हटाएर उही अर्को मान छान्न सक्छन्।

अन्तमा, यो नियम इन्डपोइन्टको पहिचानसँग सम्बन्धित छ। दुई फरक इन्डपोइन्टले एउटै सार्वजनिक निकासमा पुर्‍याउन सक्छ, र एउटा प्रदायक इन्डपोइन्टले धेरै निकासमा पुर्‍याउन सक्छ। घुमाइ बिग्रिएको छ भनेर निर्णय गर्नुअघि तिनलाई छुट्टाछुट्टै अभिलेख गर्नुहोस्।

सम्बन्धित लेखहरू