Netty өңдегіштерімен Qpid JMS үшін SOCKS5 проксиін конфигурациялау
AMQPS брокер URI-ін сақтай отырып, Qpid JMS қосылым кеңейтімдері арқылы SOCKS5 ProxyHandler жеткізушісін қосыңыз.
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 үшін делдал брокердің мақсатты портына рұқсат беруі керек.