Qpid JMS को Netty ट्रान्सपोर्टले जडान एक्सटेन्सनमार्फत नयाँ प्रोक्सी ह्यान्डलर प्राप्त गर्न सक्छ:

Supplier<ProxyHandler> handlers = () ->
    new Socks5ProxyHandler(
        new InetSocketAddress("proxy.example", 1080));

JmsConnectionFactory factory = new JmsConnectionFactory(
    "amqps://broker.example:5671");
factory.setExtension(
    JmsConnectionExtensions.PROXY_HANDLER_SUPPLIER.toString(),
    (connection, remote) -> handlers);

Supplier र InetSocketAddress JDK प्रकार हुन्। प्रोक्सी ह्यान्डलरहरू Netty का हुन्, र फ्याक्टरी तथा एक्सटेन्सन इनम org.apache.qpid.jms का हुन्।

अनुमति प्राप्त सार्वजनिक प्रोक्सी मार्गमा सार्वजनिक रूपमा पुग्न सकिने ब्रोकरका लागि SOCKS5 प्रोक्सी सूचीले होस्ट र पोर्टका उम्मेदवार दिन्छ; छानिएको नोडले ब्रोकरको वास्तविक होस्ट र पोर्ट अनुमति दिन्छ भनी पुष्टि गर्नुहोस्। एक्सटेन्सनले आपूर्तिकर्ता फर्काउँछ; आपूर्तिकर्ताको हरेक कलले नयाँ ह्यान्डलर बनाउँछ। धेरै जडानका लागि एउटै समातिएको परिवर्तनशील ह्यान्डलर फर्काउनु त्यो स्वामित्व व्यवस्थाको उल्लंघन हुन्छ।

SOCKS5 प्रमाणीकरणका लागि प्रयोगकर्तानाम र पासवर्ड स्वीकार गर्ने ह्यान्डलर ओभरलोड प्रयोग गर्नुहोस्। ब्रोकर प्रमाणहरू JMS जडानमा राख्नुहोस् र वास्तविक AMQPS ब्रोकर URI तथा TLS नाम कायम राख्नुहोस्।

एक्सटेन्सनले Netty का HTTP, SOCKS4 र SOCKS5 प्रोक्सी ह्यान्डलर समर्थन गर्छ। HTTP CONNECT का लागि मध्यस्थकर्ताले ब्रोकरको लक्ष्य पोर्ट अनुमति दिनुपर्छ।

सम्बन्धित लेखहरू