សម្រាប់ស្រះថេរ ការជ្រើសរើស round-robin អាចខ្លីយ៉ាងរីករាយ៖

from itertools import cycle

choices = cycle([
    "http://proxy-a.example:8080",
    "http://proxy-b.example:8080",
    "http://proxy-c.example:8080",
])

endpoint = next(choices)

ជំនួស URL គំរូដោយចំណុចបញ្ចប់ HTTP ពីសេវាកម្មរបស់អ្នក ឬពីបញ្ជីប្រូកស៊ី HTTP។ ការហៅជាបន្តបន្ទាប់ត្រឡប់ A, B, C បន្ទាប់មក A ម្តងទៀត។ ប្រើតម្លៃដែលបានជ្រើសនៅពេលកំណត់សំណើបន្ទាប់។ ការបង្កើតអ្នកធ្វើម្តងទៀតសម្រាប់សំណើនីមួយៗនឹងចាប់ផ្តើមលំដាប់ឡើងវិញ។ សម្រាប់ Requests ផ្ញើចំណុចបញ្ចប់ដែលបានជ្រើសទៅសំណើ។

ប្រសិនបើអ្នកចូលចិត្តបញ្ជី សូមផ្លាស់ធាតុទីមួយរបស់វាទៅចុងបញ្ចប់។ pool.append(pool.pop()) ដកធាតុចុងក្រោយចេញ ហើយដាក់វាត្រឡប់វិញភ្លាមៗ។ ធាតុទីមួយមិនដែលផ្លាស់ប្តូរទេ។ ប្រតិបត្តិការជួរគឺ pool.append(pool.pop(0)) ទោះបីជាការដកចេញពីខាងមុខធ្វើឱ្យធាតុបញ្ជីនៅសល់ផ្លាស់ទីក៏ដោយ។

អ្នកធ្វើម្តងទៀតមានការងារមានកម្រិតដោយចេតនា។ វាមិនពិនិត្យភាពអាចប្រើបាន មិនដកធាតុដែលបរាជ័យ ហើយមិនធានាច្រកចេញសាធារណៈផ្សេង។ ចំណុចបញ្ចប់ជាច្រើនអាចចែករំលែកអាសយដ្ឋានខាងក្រៅតែមួយ។

រក្សាគោលនយោបាយព្យាយាមឡើងវិញ និងការធ្វើបច្ចុប្បន្នភាពស្រះនៅក្រៅអ្នកជ្រើសរើសតូចនេះ។ អ្នកធ្វើម្តងទៀតដែលចែករំលែកក៏ត្រូវការគំរូកម្មសិទ្ធិដោយចេតនានៅក្នុងកូដស្របគ្នា ដើម្បីឱ្យចំណុចបញ្ចប់ដែលបានជ្រើសនៅជាប់នឹងប្រតិបត្តិការដែលបានទទួលវា។

អត្ថបទពាក់ព័ន្ធ