Hentikan Perulangan Rotasi Proxy agar Tidak Berjalan Selamanya
Beri kumpulan proxy Python anggaran percobaan yang terbatas dan bedakan kegagalan koneksi dari respons tujuan.
Kumpulan proxy dapat mengubah gangguan sederhana menjadi perulangan sibuk. Pilih alamat, gagal, pilih alamat lain, gagal lagi. Jika setiap endpoint tidak dapat dijangkau karena jaringan Anda sendiri mati, mengganti alamat tidak pernah memperbaiki penyebabnya.
Beri operasi itu anggaran sebelum memilih proxy pertama dari kumpulan Anda atau daftar proxy gratis: jumlah percobaan yang terbatas, batas waktu tunggu koneksi dan baca, serta tenggat untuk keseluruhan tugas. Timeout Requests mengendalikan perilaku koneksi atau baca yang didokumentasikan; dengan sendirinya itu tidak membatasi perulangan yang terus mengirim permintaan baru.
Tentukan apa yang layak mendapat percobaan lain
- Koneksi proxy yang ditolak dapat membenarkan mencoba endpoint lain.
- Respons tujuan membutuhkan penafsirannya sendiri. Menerima kesalahan HTTP membuktikan bahwa suatu jalur permintaan selesai.
- Kegagalan autentikasi proxy menuntut pemeriksaan endpoint dan akun, bukan menghantam kredensial yang sama melalui daftar yang terus bertambah.
Simpan pengecualian atau status asli bersama catatan percobaan. Pesan akhir yang hanya berisi «semua proxy gagal» menyembunyikan apakah kegagalannya bahkan memiliki penyebab yang sama.
Memeriksa kesehatan setiap proxy sebelum setiap permintaan nyata menambah satu permintaan lagi dan tetap tidak menjamin permintaan berikutnya akan berhasil. Gunakan kembali informasi kesehatan terbaru saat cocok dengan tugas, lalu biarkan operasi nyata melaporkan hasilnya sendiri.
Percobaan ulang dapat mengulangi pekerjaan
Untuk pengambilan hanya-baca, berpindah ke proxy lain biasanya lebih sederhana daripada mengulang pengiriman. Jika koneksi terputus setelah mengirim pembelian atau formulir, tujuan mungkin sudah memprosesnya. Ikuti mekanisme idempotensi layanan dan aturan percobaan ulang HTTP sebelum mengulang pekerjaan.
Setelah anggaran habis, kembalikan kegagalan yang berguna. Pekerjaan yang berhenti dengan bukti lebih mudah diperbaiki daripada yang diam-diam terus berputar sampai seseorang menyadarinya.