Kontrollo një listë proxy-sh me konkurencë të kufizuar
Kufizoni kontrollimet e njëkohshme të proxy-ve dhe regjistroni çfarë vërtetoi në të vërtetë secili kontroll për sajtin e synuar.
var options = new ParallelOptions
{
MaxDegreeOfParallelism = 8,
CancellationToken = cancellationToken
};
await Parallel.ForEachAsync(endpoints, options,
async (endpoint, token) =>
{
var result = await ProbeAsync(endpoint, target, token);
observations.Add(result);
});Përdorni një grup punëtorësh të kufizuar në vend të nisjes së një detyre për çdo pikë fundore. Për kontrollimet ndaj objektivave publikë të lejuar, lista falas e proxy-ve ofron rreshta kandidatësh; ruani protokollin e çdo hyrjeje kur ndërtoni sondën. Ky fragment planifikimi .NET supozon një ProbeAsync që njeh proxy-n dhe një grumbullues observations të sigurt për fijet. Tetë është një kufi ilustrues, jo një optimum i matur. Sonda ende ka nevojë për kufizime për çdo provë dhe anulim të të gjithë punës.
Ruani çdo rezultat të përfunduar bashkë me hyrjen e tij edhe kur rendi i përfundimit është i ndryshëm. Regjistroni protokollin, pikën fundore, objektivin, metodën, kohën e kaluar dhe rezultatin. Dështimi i lidhjes, refuzimi i hyrjes në proxy, CONNECT i refuzuar dhe një përgjigje e marrë nga sajti janë vëzhgime të ndryshme.
Hapja e një porte TCP nuk vërteton negocimin me proxy-n. Marrja e adresës së proxy-s si sajt është gjithashtu ndryshe nga përdorimi i saj për të kërkuar objektivin.
Zgjidhni objektivin dhe metodën sipas aftësisë së kërkuar. HEAD mund të kursejë trafikun e trupit, por nuk vërteton që GET kthen përmbajtje të dobishme; një sajt mund të refuzojë njërën dhe të lejojë tjetrën. HTTPS shton CONNECT dhe TLS-in e destinacionit që mungojnë në HTTP të thjeshtë. Një adresë dalëse është një vëzhgim tjetër nga ana e destinacionit, i ndarë nga hyrja e konfiguruar.
Puna e kufizuar e pengon kontrolluesin të shterojë sockets, memorjen ose planifikuesin e vet përpara se të vlerësojë rrugën. Një rezultat i shkallëzuar mbetet i dobishëm për politikën e përzgjedhjes pa pretenduar se një destinacion i suksesshëm e bën një pikë fundore universalisht të mirë.