Għal konnessjoni AMQP li timblokka u mhix TLS, ir-RabbitConnectionFactoryBean ta' Spring tista' tgħaddi fabbrika tas-sockets li taf bis-SOCKS lill-klijent Java ta' RabbitMQ.

Jekk Commons Net diġà disponibbli, ikkonfigura l-factory bean eżistenti qabel l-inizjalizzazzjoni:

var socksProxy = new java.net.Proxy(
    java.net.Proxy.Type.SOCKS,
    new java.net.InetSocketAddress("proxy.example", 1080));
rabbitFactoryBean.setSocketFactory(
    new org.apache.commons.net.DefaultSocketFactory(socksProxy));

rabbitFactoryBean huwa r-RabbitConnectionFactoryBean tal-applikazzjoni. Żomm il-broker host, il-port AMQP, il-kont u s-setup tal-immaniġġjar tal-konnessjonijiet ta' Spring tiegħu. Il-broker jibqa' d-destinazzjoni; is-SocketFactory toħloq is-sockets li jaslu għalih permezz tas-SOCKS. Għal test mhux sensittiv kontra broker pubbliku fejn l-intermedjarji pubbliċi huma permessi, il-lista tal-proxy SOCKS toffri kandidati; qabbel il-verżjoni SOCKS appoġġata mir-runtime u kkonferma l-aċċess għall-broker host u l-port reali.

Il-fabbrika ta' Commons Net toħloq java.net.Socket mhux konness bl-użu tal-Proxy mogħti. Imbagħad il-kodiċi tal-konnessjoni li timblokka ta' RabbitMQ jgħaqqad dak is-socket permezz tal-passaġġ normali tiegħu. L-esportazzjoni biss ta' HTTP_PROXY ma tipprovdix din il-fabbrika tas-sockets AMQP.

RabbitMQ tiddokumenta li l-hook SocketFactory japplika għall-I/O li timblokka. Klijent ikkonfigurat għal NIO jew trasport ieħor jeħtieġ il-hook appoġġat minn dak it-trasport. Għall-AMQPS, żomm fabbrika tas-sockets TLS adattata u verifika tad-destinazzjoni; is-sostituzzjoni tagħha bil-fabbrika sempliċi hawn fuq mhijiex konfigurazzjoni TLS sħiħa.

Artikli relatati