ហេតុអ្វី Requests បើកការតភ្ជាប់ច្រើនជាង pool_maxsize
ប្រើ pool_block សម្រាប់អាងមានកំណត់ ហើយបន្ថែមថវិកាកម្រិតកម្មវិធី នៅពេលដែលកំណត់ត្រូវគ្របដណ្តប់ចរាចរណ៍ទាំងអស់តាមរយៈប្រូកស៊ី។
ជាមួយលំនាំដើម pool_block=False, pool_maxsize កំណត់ការតភ្ជាប់ដែលរក្សាទុកក្នុងអាង មិនមែនការតភ្ជាប់ដំណាលគ្នាទាំងអស់ទេ។ Requests អាចបង្កើតបន្ថែម ហើយបោះចោលវាក្រោយមក។
សម្រាប់អាងមានកំណត់ដែលសំណើ HTTPS របស់សេសសិនដែលមានស្រាប់ប្រើ:
from requests.adapters import HTTPAdapter
adapter = HTTPAdapter(
pool_connections=10,
pool_maxsize=4,
pool_block=True,
)
session.mount("https://", adapter)ការដំឡើងជ្រើស URL គោលដៅ HTTPS។ សំណើ HTTP ប្រើអាដាប់ទ័រដែលបានដំឡើងក្រោម http://។
| ធាតុបញ្ចូល | អ្វីដែលវាគ្រប់គ្រង |
|---|---|
| pool_connections | ចំនួនអាងដែលអ្នកគ្រប់គ្រងរក្សាទុក |
| pool_maxsize | ការតភ្ជាប់ក្នុងអាងមួយ |
| pool_block=True | រង់ចាំការតភ្ជាប់ពីអាង ជាជាងបង្កើតបន្ថែម |
Requests ក៏រក្សាទុកអ្នកគ្រប់គ្រងប្រូកស៊ីតាម URL ប្រូកស៊ីដែរ។ តម្លៃទាំងនេះមិនបង្កើតជាដែនកំណត់សរុបតែមួយសម្រាប់បញ្ជីប្រូកស៊ី និងគោលដៅដែលវិលជុំនោះទេ។ ប្រើថវិកាភាពអាចប្រតិបត្តិដំណាលគ្នាកម្រិតកម្មវិធី ប្រសិនបើតម្រូវការគឺឱ្យការងារទាំងអស់ឆ្លងកាត់អ្នកកណ្តាលតែមួយ។
ការទប់ស្កាត់ធ្វើឱ្យការដោះលែងការឆ្លើយតបជាចាំបាច់៖ ប្រើប្រាស់តួ ឬបិទការឆ្លើយតបស្ទ្រីម ដើម្បីឱ្យការងារដែលរង់ចាំអាចបន្ត។ អាដាប់ទ័រ Requests មិនផ្តល់ពេលវេលាកំណត់ដាច់ដោយឡែកសម្រាប់ការរង់ចាំអាងនេះក្នុងការរៀបចំដែលបានបង្ហាញទេ។