ਪਰਾਕਸੀ ਰੋਟੇਸ਼ਨ ਲੂਪ ਨੂੰ ਹਮੇਸ਼ਾ ਲਈ ਚੱਲਣ ਤੋਂ ਰੋਕੋ
Python ਪਰਾਕਸੀ ਪੂਲ ਨੂੰ ਸੀਮਿਤ ਕੋਸ਼ਿਸ਼ਾਂ ਦਾ ਬਜਟ ਦਿਓ ਅਤੇ ਕਨੈਕਸ਼ਨ ਫੇਲ੍ਹਤਾਂ ਨੂੰ ਮੰਜ਼ਿਲ ਦੇ ਜਵਾਬਾਂ ਤੋਂ ਵੱਖ ਕਰੋ।
ਇੱਕ ਪਰਾਕਸੀ ਪੂਲ ਸਧਾਰਨ ਰੁਕਾਵਟ ਨੂੰ ਰੁਝੇ ਹੋਏ ਲੂਪ ਵਿੱਚ ਬਦਲ ਸਕਦਾ ਹੈ। ਪਤਾ ਚੁਣੋ, ਫੇਲ੍ਹ ਹੋਵੇ, ਦੂਜਾ ਚੁਣੋ, ਫਿਰ ਫੇਲ੍ਹ ਹੋਵੇ। ਜੇ ਹਰ ਐਂਡਪੁਆਇੰਟ ਤੱਕ ਪਹੁੰਚ ਨਹੀਂ ਹੁੰਦੀ ਕਿਉਂਕਿ ਤੁਹਾਡਾ ਆਪਣਾ ਨੈੱਟਵਰਕ ਬੰਦ ਹੈ, ਪਤੇ ਬਦਲਣ ਨਾਲ ਕਾਰਨ ਕਦੇ ਠੀਕ ਨਹੀਂ ਹੁੰਦਾ।
ਆਪਣੇ ਪੂਲ ਜਾਂ ਮੁਫ਼ਤ ਪਰਾਕਸੀ ਸੂਚੀ ਵਿੱਚੋਂ ਪਹਿਲਾ ਪਰਾਕਸੀ ਚੁਣਨ ਤੋਂ ਪਹਿਲਾਂ ਕੰਮ ਨੂੰ ਬਜਟ ਦਿਓ: ਸੀਮਿਤ ਕੋਸ਼ਿਸ਼ਾਂ, ਸੀਮਿਤ ਕਨੈਕਸ਼ਨ ਅਤੇ ਪੜ੍ਹਨ ਦੀ ਉਡੀਕ, ਅਤੇ ਪੂਰੇ ਕੰਮ ਲਈ ਅੰਤਿਮ ਸਮਾਂ। Requests ਟਾਈਮਆਊਟ ਆਪਣੇ ਦਸਤਾਵੇਜ਼ੀ ਕਨੈਕਸ਼ਨ ਜਾਂ ਪੜ੍ਹਨ ਵਿਵਹਾਰ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਦਾ ਹੈ; ਇਹ ਆਪਣੇ ਆਪ ਨਵੀਆਂ ਬੇਨਤੀਆਂ ਭੇਜਦੇ ਰਹਿਣ ਵਾਲੇ ਲੂਪ ਨੂੰ ਸੀਮਿਤ ਨਹੀਂ ਕਰਦਾ।
ਤੈਅ ਕਰੋ ਕਿ ਕਿਹੜੀ ਗੱਲ ਹੋਰ ਕੋਸ਼ਿਸ਼ ਦੇ ਯੋਗ ਹੈ
- ਰੱਦ ਕੀਤਾ ਪਰਾਕਸੀ ਕਨੈਕਸ਼ਨ ਕਿਸੇ ਹੋਰ ਐਂਡਪੁਆਇੰਟ ਦੀ ਕੋਸ਼ਿਸ਼ ਨੂੰ ਜਾਇਜ਼ ਠਹਿਰਾ ਸਕਦਾ ਹੈ।
- ਮੰਜ਼ਿਲ ਦੇ ਜਵਾਬ ਦੀ ਆਪਣੀ ਵਿਆਖਿਆ ਲੋੜੀਂਦੀ ਹੈ। HTTP ਗਲਤੀ ਮਿਲਣਾ ਸਾਬਤ ਕਰਦਾ ਹੈ ਕਿ ਕੋਈ ਬੇਨਤੀ ਮਾਰਗ ਪੂਰਾ ਹੋਇਆ ਹੈ।
- ਪਰਾਕਸੀ ਪ੍ਰਮਾਣਿਕਤਾ ਫੇਲ੍ਹਤ ਲਈ ਐਂਡਪੁਆਇੰਟ ਅਤੇ ਖਾਤਾ ਜਾਂਚਣਾ ਚਾਹੀਦਾ ਹੈ, ਨਾ ਕਿ ਵਧਦੀ ਸੂਚੀ ਵਿੱਚੋਂ ਉਹੀ ਪ੍ਰਮਾਣ ਪੱਤਰ ਵਜਾਉਣਾ।
ਮੂਲ ਐਕਸੈਪਸ਼ਨ ਜਾਂ ਸਥਿਤੀ ਨੂੰ ਕੋਸ਼ਿਸ਼ ਦੇ ਰਿਕਾਰਡ ਨਾਲ ਰੱਖੋ। ਸਿਰਫ਼ “ਸਾਰੇ ਪਰਾਕਸੀ ਫੇਲ੍ਹ ਹੋ ਗਏ” ਵਾਲਾ ਅੰਤਿਮ ਸੁਨੇਹਾ ਲੁਕਾਉਂਦਾ ਹੈ ਕਿ ਫੇਲ੍ਹਤਾਂ ਦਾ ਕਾਰਨ ਇੱਕੋ ਸੀ ਜਾਂ ਨਹੀਂ।
ਹਰ ਅਸਲ ਬੇਨਤੀ ਤੋਂ ਪਹਿਲਾਂ ਹਰ ਪਰਾਕਸੀ ਦੀ ਸਿਹਤ ਜਾਂਚਣਾ ਇੱਕ ਹੋਰ ਬੇਨਤੀ ਜੋੜਦਾ ਹੈ ਅਤੇ ਫਿਰ ਵੀ ਗਾਰੰਟੀ ਨਹੀਂ ਦੇ ਸਕਦਾ ਕਿ ਅਗਲੀ ਸਫਲ ਹੋਵੇਗੀ। ਜਿੱਥੇ ਕੰਮ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ ਉੱਥੇ ਤਾਜ਼ਾ ਸਿਹਤ ਜਾਣਕਾਰੀ ਮੁੜ ਵਰਤੋ, ਫਿਰ ਅਸਲ ਕੰਮ ਨੂੰ ਆਪਣਾ ਨਤੀਜਾ ਦੱਸਣ ਦਿਓ।
ਮੁੜ ਕੋਸ਼ਿਸ਼ ਕੰਮ ਨੂੰ ਦੁਹਰਾ ਸਕਦੀ ਹੈ
ਸਿਰਫ਼ ਪੜ੍ਹਨ ਲਈ ਲਿਆਉਣ ਵਿੱਚ ਦੂਜੇ ਪਰਾਕਸੀ 'ਤੇ ਜਾਣਾ ਆਮ ਤੌਰ 'ਤੇ ਸਬਮਿਸ਼ਨ ਮੁੜ ਚਲਾਉਣ ਨਾਲੋਂ ਸੌਖਾ ਹੁੰਦਾ ਹੈ। ਜੇ ਖਰੀਦ ਜਾਂ ਫਾਰਮ ਸਬਮਿਸ਼ਨ ਭੇਜਣ ਤੋਂ ਬਾਅਦ ਕਨੈਕਸ਼ਨ ਟੁੱਟ ਜਾਵੇ, ਮੰਜ਼ਿਲ ਨੇ ਇਸ ਨੂੰ ਪਹਿਲਾਂ ਹੀ ਪ੍ਰੋਸੈਸ ਕੀਤਾ ਹੋ ਸਕਦਾ ਹੈ। ਕੰਮ ਮੁੜ ਚਲਾਉਣ ਤੋਂ ਪਹਿਲਾਂ ਸੇਵਾ ਦੀ idempotency ਵਿਵਸਥਾ ਅਤੇ HTTP ਮੁੜ ਕੋਸ਼ਿਸ਼ ਨਿਯਮਾਂ ਦੀ ਪਾਲਣਾ ਕਰੋ।
ਬਜਟ ਖ਼ਤਮ ਹੋਣ 'ਤੇ ਇੱਕ ਲਾਭਦਾਇਕ ਫੇਲ੍ਹਤ ਵਾਪਸ ਕਰੋ। ਸਬੂਤ ਨਾਲ ਰੁਕਣ ਵਾਲਾ ਕੰਮ ਕਿਸੇ ਦੇ ਧਿਆਨ ਵਿੱਚ ਆਉਣ ਤੱਕ ਚੁੱਪਚਾਪ ਘੁੰਮਦੇ ਰਹਿਣ ਵਾਲੇ ਕੰਮ ਨਾਲੋਂ ਠੀਕ ਕਰਨਾ ਸੌਖਾ ਹੁੰਦਾ ਹੈ।