HTTPX PoolTimeout යනු ප්රොක්සි සම්බන්ධතා කාලය ඉක්මවීමක් නොවේ
HTTPX සම්බන්ධතා සංචිතයේ රැඳීම හඳුනාගෙන, ඊළඟ ඉල්ලීම නොලැබී තිබිය හැකි ප්රොක්සියක් මාරු කිරීමට පෙර ප්රවාහ ප්රතිචාර නිදහස් කරන්න.
PoolTimeout යන්නෙන් HTTPX හට සකසා ඇති රැඳී සිටීමේ කාලය තුළ සංචිතයෙන් සම්බන්ධතාවයක් නොලැබුණු බව කියවේ. ප්රොක්සියට අලුත් TCP සම්බන්ධතාවයක කාලය ඉක්මවූ බවට සාක්ෂියක් නොවේ. දෙවන ඉල්ලීම තවමත් ඔබේ ක්රියාවලිය තුළ රැඳී සිටිය හැකියි.
සේවාලාභියා එක් සම්බන්ධතාවයකට පමණක් ඉඩ දී පළමු ප්රවාහ ප්රතිචාරය විවෘතව තැබූ විට මෙය පහසුවෙන් යළි ඇති කළ හැකියි. තවත් ඉල්ලීමක් ඇරඹීම එම සම්බන්ධතාවය ස්වයංක්රීයව නිදහස් නොකරයි.
ප්රවාහ ප්රතිචාරයේ වගකීම පැහැදිලි කරන්න
import httpx
limits = httpx.Limits(
max_connections=1,
max_keepalive_connections=1,
)
timeout = httpx.Timeout(
connect=5, read=10, write=10, pool=1
)
with httpx.Client(
proxy="http://203.0.113.10:8080",
trust_env=False,
limits=limits,
timeout=timeout,
) as client:
with client.stream("GET", "https://example.com/") as response:
print(response.status_code)
for chunk in response.iter_bytes():
print(len(chunk))
next_response = client.get("https://example.com/")
print(next_response.status_code)
ධාවනයට පෙර ලේඛන ප්රොක්සි ලිපිනය මාරු කරන්න. ඊළඟ ඉල්ලීම ප්රවාහ සන්දර්භයෙන් පිටවූ පසු ඇරඹේ. කේතය ලූපයෙන් පිටවුණත් ව්යතිරේකයක් ඇති කළත් පිටවීම ප්රතිචාරය වසයි.
client.send(request, stream=True) වැනි අතින් ප්රවාහනයේදී අවසානයේ වැසීමේ වගකීම ඔබේ කේතයටය. AsyncClient සඳහා අදාළ අතින් පිරිසිදු කිරීම response.aclose() මඟින් await කරයි. නොකියවූ ප්රතිචාරයක් වැසීම ධාරිතාව නිදහස් කරයි, නමුත් යටින් ඇති සම්බන්ධතාවය යළි භාවිත කිරීම වෙනුවට ඉවත දැමීමට සිදුවිය හැකියි.
ව්යතිරේකයේ නම කියවන්න
ConnectTimeout සම්බන්ධතාවය ඇති කිරීම පිළිබඳය. ReadTimeout ප්රතිචාර දත්ත එනතුරු රැඳීම පිළිබඳය. PoolTimeout සම්බන්ධතා ඉඩක් ලබාගැනීම පිළිබඳය. «ප්රොක්සි කාලය ඉක්මවීම» පමණක් ලොග් කිරීම නිවැරදි පිළියම තේරීමට අවශ්ය වෙනස අහිමි කරයි.
සම්බන්ධතා අන්ත IP මාරු කිරීමට පෙර විවෘත ප්රතිචාර, සමගාමී කාර්ය හා සම්බන්ධතා සීමා පරීක්ෂා කරන්න. සාධාරණ සමගාමී බරකට විශාල සංචිතයක් සුදුසු විය හැකි නමුත් කවදාවත් නොවසන ප්රතිචාර නිවැරදි නොකරයි. එය යෙදුමට අත්පත් කරගැනීමට වැඩි ධාරිතාවක් දීම පමණි.
මුළු වැඩබර පුරා සේවාලාභියා යළි භාවිත කළ හැකිව තබන්න. සෑම ඉල්ලීමක්ම ක්රියාකරන ලෙස පෙන්වීමට සේවාලාභියා යළි නිර්මාණය කිරීම ජීවන චක්ර ගැටලුවක් සඟවා සම්බන්ධතා යළි භාවිතය අහිමි කළ හැකියි.