HTTP CONNECT ପାଇଁ Pub/Sub Java ର gRPC ଚ୍ୟାନେଲ କନଫିଗର କରନ୍ତୁ
GAX ଚ୍ୟାନେଲ ପ୍ରଦାନକାରୀ ମାଧ୍ୟମରେ ProxyDetector ସ୍ଥାପନ କରନ୍ତୁ ଏବଂ Pub/Sub ର ଲକ୍ଷ୍ୟ ଠିକଣା ଓ TLS ପରିଚୟ ଅକ୍ଷୁଣ୍ଣ ରଖନ୍ତୁ।
ଯେତେବେଳେ Pub/Sub Java gRPC ସଂଯୋଗକୁ HTTP CONNECT ପ୍ରକ୍ସି ଆବଶ୍ୟକ ହୁଏ, ସୃଷ୍ଟ ହୋଇଥିବା କ୍ଲାଏଣ୍ଟର ଚ୍ୟାନେଲ ପ୍ରଦାନକାରୀ ବ୍ୟବହାର କରନ୍ତୁ। ସାଧାରଣ URLConnection ସେଟିଂ ଏହି ଚ୍ୟାନେଲ କନଫିଗରେସନ ସ୍ଥାପିତ କରେ ନାହିଁ।
topic-admin କ୍ଲାଏଣ୍ଟ ପାଇଁ:
var channelProvider = TopicAdminSettings
.defaultGrpcTransportProviderBuilder()
.setChannelConfigurator(channel -> channel.proxyDetector(target ->
HttpConnectProxiedSocketAddress.newBuilder()
.setProxyAddress(new InetSocketAddress("proxy.example", 8080))
.setTargetAddress((InetSocketAddress) target)
.setUsername(proxyUser)
.setPassword(proxyPassword)
.build()))
.build();
var settings = TopicAdminSettings.newBuilder()
.setTransportChannelProvider(channelProvider)
.build();
try (TopicAdminClient client = TopicAdminClient.create(settings)) {
// Perform the application's intended topic-admin operation here.
}TopicAdminClient ଏବଂ TopicAdminSettings Pub/Sub v1 ଶ୍ରେଣୀ; HttpConnectProxiedSocketAddress io.grpc ରୁ ଆସେ ଏବଂ InetSocketAddress java.net ରୁ। ଉଦାହରଣଟି ଏହି ଚ୍ୟାନେଲ ବ୍ୟବହାର କରୁଥିବା ସାଧାରଣ ଇଣ୍ଟରନେଟ୍-ଠିକଣା ଲକ୍ଷ୍ୟ ମାନି ନେଇଛି।
ଡିଟେକ୍ଟର ମୂଳ ଲକ୍ଷ୍ୟ ସହିତ ଏକ ପ୍ରକ୍ସି ସଂଯୋଗ ଠିକଣା ଫେରାଏ। gRPC ନିର୍ମାତା ପ୍ରକ୍ସି ଠିକଣା ସମାଧାନ ହେବା ଆବଶ୍ୟକ କରେ। ସେବା ଏଣ୍ଡପଏଣ୍ଟ Pub/Sub ଭାବରେ ରଖନ୍ତୁ: ଏହାକୁ ପ୍ରକ୍ସି ହୋଷ୍ଟନାମ ସହିତ ବଦଳାଇଲେ ସେବା ଲକ୍ଷ୍ୟ ଓ ଉଦ୍ଦିଷ୍ଟ TLS ପରିଚୟ ହରାଇବ।
ଅପ୍ରମାଣିତ ପ୍ରକ୍ସି ପାଇଁ ଉପଯୋଗକର୍ତ୍ତାନାମ/ପାସୱାର୍ଡ କଲ ହଟାନ୍ତୁ; ସାର୍ବଜନୀନ HTTP ପ୍ରାର୍ଥୀ HTTP ପ୍ରକ୍ସି ତାଲିକାରୁ ମିଳେ। ସେ କଲଗୁଡ଼ିକ HTTP CONNECT ପ୍ରମାଣପତ୍ର ଇଣ୍ଟରଫେସ, SOCKS କିମ୍ବା ସାଧାରଣ NTLM କାର୍ଯ୍ୟାନ୍ୱୟନ ନୁହେଁ।
ଯଦି gRPC କାର୍ଯ୍ୟ ପୂର୍ବରୁ ବିଫଳତା ଘଟେ ଏବଂ ସ୍ୱତନ୍ତ୍ର ଭାବରେ ସୃଷ୍ଟ ପ୍ରମାଣପତ୍ର ଏକ ଟୋକେନ ପାଏ, ସେ ପ୍ରମାଣପତ୍ରର HTTP ପଥ ଯାଞ୍ଚ କରନ୍ତୁ। ଏହା ଏଠାରେ ଦେଖାଯାଇଥିବା ଚ୍ୟାନେଲ ପ୍ରଦାନକାରୀ ବାହାରେ।