එක් thread එකක් proxy ගුණාංගයක් සකසා, ඉල්ලීමක් කර, පැරණි අගය නැවත පිහිටුවයි. තවත් thread එකක් වෙනත් proxy එකක් සමඟ එසේම කරයි. ඉහළ සිට පහළට කියවන විට කේතය පිළිවෙලට පෙනේ, නමුත් thread දෙකම බෙදාගත් JVM තත්ත්වය වෙනස් කරයි.

System.setProperty() ක්‍රියාවලිය සඳහා පද්ධති ගුණාංගයක් වෙනස් කරයි. එය එය අමතන thread එකට මාර්ගයක් අමුණන්නේ නැත. සමගාමී ඉල්ලීමකට වෙනත් කෙනෙකුගේ කාර්යය සඳහා ලියූ අගයක් දැකිය හැක, සහ පවතින client එකක් දැනටමත් තමන්ගේම වින්‍යාසය ග්‍රහණය කර තිබිය හැක.

මාර්ගය client එකේ කොටසක් කරන්න

Java හි HTTP client සඳහා, හිතාමතා proxy තෝරන්නන් සමඟ client සාදන්න. වැඩබරවලට වෙනස් මාර්ගගත කිරීමේ ප්‍රතිපත්ති අවශ්‍ය විට වෙන වෙනම client තබා ගන්න:

HttpClient client = HttpClient.newBuilder()
    .proxy(ProxySelector.of(
        new InetSocketAddress("203.0.113.10", 8080)))
    .connectTimeout(Duration.ofSeconds(5))
    .build();

ආයාත වන්නේ java.net, java.net.http සහ java.time ය. ලිපිනය නිදර්ශනාත්මකයි; අවසර ලත් පොදු මාර්ග පරීක්ෂණ සඳහා HTTP proxy ලැයිස්තුව අපේක්ෂක අන්ත ලක්ෂ්‍ය සපයයි. ඉල්ලීම් කාල සීමා සහ proxy සත්‍යාපනය යෙදුමේ අවශ්‍යතා අනුව වෙන වෙනම වින්‍යාස කරන්න.

builder හි proxy ක්‍රමය client මට්ටමේ තේරීමක් සටහන් කරයි. එය අසමමුහුර්ත ක්‍රියාවන් වටා එතූ ගෝලීය ලේඛන අනුපිළිවෙලකට වඩා ප්‍රතිපත්තිය පරීක්ෂා කිරීම පහසු කරයි.

ගෝලීය සැකසුම් තවමත් ප්‍රයෝජනවත්

සහභාගී වන සෑම client එකක්ම එය අනුගමනය කිරීමට අදහස් කර ඇත්නම්, සම්පූර්ණ JVM එකකට එකම proxy ප්‍රතිපත්තියක් සුදුසු විය හැක. එම ප්‍රතිපත්තිය යෙදුම ආරම්භයේදී සකසා, එය ගරු කරන පුස්තකාල මොනවාදැයි තහවුරු කරන්න.

ගෝලීය ගුණාංග තනි ඉල්ලීම් සඳහා තාවකාලික ස්විචයක් ලෙස භාවිතා කරන විට ගැටළු පැන නගී. සේවාදායකයක, ඔබේම ක්‍රමය සමමුහුර්ත ලෙස පෙනුනත් පසුබිම් සේවකයන් සහ පුස්තකාල ඇමතුම් සමගාමීව ක්‍රියා කළ හැක. සම්බන්ධතාවය හිමි client හෝ connector සමඟ මාර්ගගත කිරීමේ තත්ත්වය තබා ගන්න, එවිට තවත් ඉල්ලීමකට එය කාර්යය මැදදී වෙනස් කළ නොහැක.

අදාළ ලිපි