Guzzle ئىلتىماسى ئۇلىنىش ئورنىنى ساقلاۋاتقاندا ۋاقتى ئۆتۈپ كېتىشى مۇمكىن
cURL multi نىڭ ئاكتىپ ئۇلىنىش بۇدجېتىنى ئورتاق handler غا تەڭشەپ، ئۇلارنى بىكار cache سىغىمىدىن ئايرىڭ.
ئەگەر ئاسىنخرون ئىلتىماس ئۇلىنىش ئېچىلماي تۇرۇپ ۋاقتى ئۆتسە، تور ۋاقىت چېكى بىلەن بىرگە توشۇش ئاكتىپ چەكلىمىلىرىنىمۇ تەكشۈرۈڭ. بۇ چەكلىمىلەر تولغاندا libcurl يۆتكەشلەرنى قاتارغا قويىدۇ، قاتاردا تۇرغاندا ئۇلارنىڭ ۋاقىت بۇدجېتى داۋاملىشىدۇ.
Guzzle 7 نىڭ ئورتاق cURL multi handler ى ئۈچۈن:
use GuzzleHttp\Client;
use GuzzleHttp\HandlerStack;
use GuzzleHttp\Handler\CurlMultiHandler;
$multi = new CurlMultiHandler([
'options' => [
CURLMOPT_MAX_TOTAL_CONNECTIONS => 24,
CURLMOPT_MAX_HOST_CONNECTIONS => 4,
],
]);
$client = new Client([
'handler' => HandlerStack::create($multi),
]);بۇ client نى ئاسىنخرون خىزمەت ئۈچۈن ئىشلىتىپ، مەشغۇلاتلارغا ئۇنىڭ كۆزلىگەن proxy تاللانمىسىنى بېرىڭ. قىممەتلەر ئۈلگە بۇدجېتى. ئاممىۋى ۋاسىتىچى ئارقىلىق رۇخسەت قىلىنغان ئاممىۋى ئىلتىماسلار ئۈچۈن HTTP proxy تىزىملىكى مەشغۇلاتلارنىڭ proxy URL لىرىغا نامزاتلارنى تەمىنلەيدۇ.
| تاللانما | بۇدجېت |
|---|---|
| MAX_TOTAL_CONNECTIONS | multi handler ئاستىدا بىرلا ۋاقىتتا ئېچىلغان ئۇلىنىشلار |
| MAX_HOST_CONNECTIONS | بىر host/port قا ئۇلىنىشلار؛ proxy ئۇلىنىشلىرى proxy ئاخىرلاشقان نۇقتىغا ھېسابلىنىدۇ |
| MAXCONNECTS | ئىشلىتىلگەندىن كېيىن cache تا ساقلىنىدىغان ئۇلىنىشلار |
ئوخشاش proxy ئىشلىتىدىغان بىر قانچە تور بېكەت ئاپتوماتىك ئايرىم proxy ئۇلىنىش كوتاسىغا ئېرىشەلمەيدۇ. بىكار cache سىغىمى ئالدىن ئۇلىنىش ئاچمايدۇ ۋە ئۇلارنى ئالماشتۇرغىلى بولىدىغان قىلمايدۇ: قايتا ئىشلىتىش يول، مەنزىل، پروتوكول ۋە دەلىللەشكە باغلىق.
ئەپنىڭ ۋەزىپە بۇدجېتى ۋە تەمىنلىگۈچىنىڭ ھەر قانداق كوتاسىنى بۇ توشۇش بۇدجېتلىرى بىلەن ماسلاشتۇرۇڭ. ئۇلار سېكۇنتىغا ئىلتىماسنى ئەمەس، ئۇلىنىشنى سانايدۇ. socket ۋاقىت چېكىنى ئۆستۈرۈش قاتار ياكى تور ساقلىشىنىڭ ۋاقىتنى خەجلەنگەنلىكىنى پەرقلەندۈرەلمەيدۇ.